허진혁

Software Engineer

Email: gjwlsgur4866@gmail.com

Phone: 010-4140-4866

Blog: https://velog.io/@wlsgur1533

About Me

백엔드에서 쿼리 최적화로 15% 성능 향상을 달성하였으며, AOP를 활용해 비즈니스 로직과 부가 로직을 분리한 경험이 있습니다. 또한, 효과적인 의사소통을 중시하여 좋은 질문하는 문화를 조성하는 것을 좋아하며, NotionWBS 활용해 일정 공유와 기록을 통해 팀의 협업을 강화한 경험이 있습니다.

Project

개발 한 스푼

2024.05 ~ 2024.06

문답을 통해 쉽고 간편하게 CS(Computer Science) 공부를 도와주는 모바일 어플리케이션

  • 팀프로젝트 (백엔드 30% 기여, post 관련 기능)
  • kotlin 1.9.20, spring boot 3.2
  • 페이징 처리 방식 시스템 성능 개선
    • Offset 기반의 페이징을 No-Offset 방식으로 변경해 약 15% 향상
    • 동적 쿼리를 도입하여 다양한 페이징 요구 사항에 유연하게 대응
  • 유저가 버그를 신고하면 실시간으로 관리자에게 슬랙 알림을 보내는 버그 레포팅 시스템 구축
  • 사용자의 월별 답변 갯수 집계 기능에서 복합 인덱스를 생성하여 쿼리 응답 속도를 약 28% 향상

Givemeticon

2023.09 ~ 2024.01

기프티콘 전문 중고거래 플랫폼으로, 사용하지 않거나 만료가 임박한 기프티콘을 판매하고 저렴한 가격으로 구매할 수 있는 환경을 제공하는 서비스

  • Java 17, Spring Boot 3.1, Mybatis, Mysql, Redis -API 응답 일관성과 시스템 안정성 향상
    • ReturnValueHandler를 커스터마이징하여 공통 응답 포맷 적용하여 통일된 응답 구조로 데이터 전달 일관성 확보
    • ResponseEntityExceptionHandler를 커스터마이징하여 전역 예외 처리기 구현하여 예외 발생 시 표준화된 에러 응답 제공 및 로그 기록
  • 시큐리티 프레임워크 없이 직접 OAuth 로그인을 구현하여 회원 가입 프로세스를 간소화
  • 회원가입 시 메일 전송 기능을 동기에서 비동기로 전환하여 이메일 인증 API의 지연 문제 해결 및 처리 시간을 5.12s에서 0.78s로 단축
  • 쿠폰 발급 시 데이터 일관성 문제 해결
    • 시스템 안정성을 향상시키기 위해 Redisson 라이브러리를 사용하여 안전한 락 구현
    • Redis 분산 락과 AOP를 활용하여 동시성 제어로 데이터 일관성 확보

내친

2023.04 ~ 2023.06

Facebook, Thread, Twitter와 같은 SNS 서비스

  • Java 11, Spring Boot 2.7, JWT, Mysql, Redis, AWS
  • 로그인 처리 안정성 및 성능 개선
    • 분산 환경에서 Redis를 활용해 스토리지를 분리하고 토큰 기반 인증으로 전환하여 안정성 및 성능 개선
  • Redis 기반 글로벌 캐싱 시스템 구축하여 인기 게시글 응답 속도 응답 속도 약 30% 향상
  • 서버 안정성 유지 및 메모리 사용량 관리
    • Redis의 allkeys-lfu 캐시 제거 정책 채택으로 서버 안정성 유지 및 메모리 사용량 효과적 제한
  • Redis 인스턴스를 토큰 저장과 캐시로 분리하여 부하를 분산하여 처리 능력 및 응답 속도 향상

Education

f-lab

2023.07 ~ 2024.01

깊이있게 학습하는 방법을 익혀 사수가 없어도 혼자 성장할 수 있는 개발자로 성장할 수 있도록 멘토링을 진행하여, 자바의 기본 개념들을 학습한 후 프로젝트를 통해 설계, 구현, 문서화를 포함한 전체적인 과정에 참여하여 문제 해결 능력과 소프트 스킬을 배웠습니다.

멋쟁이 사자처럼 백엔드

2022.09 ~ 2022.02

Java/Spring을 배우고 프로젝트에 적용하는 부트캠프로 회고 문화와 효울적인 스터디 진행하는 방법을 배웠습니다. 또한, 프로젝트를 진행할 떄 구현 뿐 아니라 프로젝트 일정 관리, 협업 방식, API 설계 등을 배웠습니다.