미리보기
기본 정보
5년차 자바 개발자로 B2C 이커머스, 구독 시스템 개발을 진행했습니다. 주문, 결제 도메인에 JPA를 도입시켜보면서 월 평균 1000만원 이상의 결제 처리를 수행시켰고 그 과정에서 유닛, 통합 테스트의 중요성을 몸소 체험했습니다. 그리고 30만건 이상의 데이터 INSERT 처리를 위한 RabbitMQ를 성공적으로 도입시킨 경험이 있습니다. 업무 외적으로는 실무 개발 환경 개선을 위한 개인 공부를 주로 시도하는 편입니다. 객체 리터럴 패턴과 같은 새로 알게된 디자인 패턴을 사내 코드에 적용하고 전파하면서 팀워크에 기여해본 경험이 있습니다. 그리고 약 10만명 이상의 방문객을 보유한 개인 기술 블로그에 배운 것들을 꾸준히 정리하고 있습니다. 아래는 제가 업무에서 주로 다뤘던 기술들입니다. - Backend : Java, SpringBoot, MySQL, MyBatis, JPA, RabbitMQ, Redis, MongoDB, Ruby on rails - Frontend : Javascript, jQuery - Infra : Docker, AWS(EC2, S3, ECR, ECS, ALB), Github Actions - Etc : Jira, Git
경력
백패커(idus)
자바 백엔드 개발자 | TS엔지니어링셀
2023.01. ~ 2024.02. (1년 2개월)
퇴사 사유
경영 악화로 인한 희망 퇴직
진행 프로젝트
포인트 도메인 개발(2023.07 - 2023.10)
사용기술 : Java, SpringBoot, JPA, MySQL, Docker, Ruby on rails
자사 서비스 url : https://steadio.co/
포인트 충전시 동시성 이슈 방지를 위한 비관적 락 적용
네이버페이 연동을 통해 월 평균 1000만원 매출 기여
PG API와의 트랜잭션 분리를 통해 장애 대응 완료
algolia를 활용한 검색엔진 도입(2023.05 - 2023.06)
사용기술 : Java, SpringBoot, JPA, MySQL, Docker, Ruby on rails
Elastic Search와 Algolia 비교 조사 및 도입 진행
1만건 가량의 검색어 적재 및 인기 검색어 추출
기존 MySQL Like 기반 검색방식을 Algolia Open API 연동으로 전환해 성능 개선(10만건 기준 0.4초 => 0.02초)
멤버십 구독 시스템 개발 및 유지보수(2023.01 - 2023.04)
사용기술 : Java, SpringBoot, JPA, MySQL, Docker, Ruby on rails
멤버십 구독 API 개발 및 유지 보수
월 결제 배치 실패시 7회 재시도 로직을 추가해 유저 이탈 방지(월 평균 3명 이탈 => 0명 이탈)
메쉬코리아(vroong)
자바 백엔드 개발자 | 커머스개발실
2021.06. ~ 2022.10. (1년 5개월)
퇴사 사유
경영 악화로 인한 희망 퇴직
진행 프로젝트
부릉마켓 개발(2021.06 - 2022.07)
사용기술 : Java, SpringBoot, JPA, MySQL, Docker
MSA 환경 기반 장바구니, 주문, 결제 도메인 API 개발
Jacoco를 활용한 통합 테스트 커버리지 약 90% 달성
500개 이상의 홈화면 상품 N+1 조회 문제 성능 개선 (4초=>0.2초)
ShedLock 적용으로 다수 인스턴스 스케줄러 동시성 처리
PR 생성시 코드 리뷰 정책 주도, 코딩 컨벤션 제안
플래티어
사원 | 플랫폼개발팀
2020.01. ~ 2021.06. (1년 6개월)
퇴사 사유
타 회사 이직
진행 프로젝트
카카오톡 메시지 발송 등록/관리 페이지 개발(2021.03 - 2021.06)
사용기술 : Java, SpringBoot, RabbitMQ, MySQL, MyBatis
RabbitMQ 도입을 통해 30만건 이상의 DB INSERT 성능 개선
RabbitMQ DLX(Dead Letter eXchange) 적용 효과로 유실 메시지 100% 이관
Third Party(nhn cloud) 서비스 API 문서 검토 및 연동 작업 수행
파일 업로드 공통 API 개발(2021.02 - 2021.03)
사용기술 : Java, SpringBoot, AWS S3, Javascript, jQuery, MongoDB, MyBatis
공통 JS 함수, API 스펙 설계 및 구현
S3 더미 파일 관련 삭제 배치 처리(운영, 개발환경 합산 기준 월 평균 50GB 용량 절감)
작업 내용 관련한 가이드 문서 작성 및 전파
고객사 백오피스 개발(2020.05 - 2021.01)
사용기술 : Java, SpringBoot, Javascript, jQuery, MongoDB, MyBatis
MongoDB Collection 모델링 및 API 개발
Javascript, jQuery 활용한 API 연동
Javascript MVC 패턴 전파 및 도입, 약 80% 도입 성공
프로젝트
콘서트 예약 서비스 개발
개인
2024.03. ~ 2024.06.
개요
항해99라는 교육과정에서 진행한 과제 전형 프로젝트
과제 요구사항 통과율 상위 1% 달성(https://hhpluscertificateofcompletion.oopy.io/)
주요 기능
대기열, 예약, 결제
상세 내용
사용 기술 : Java, SpringBoot, JPA, H2, Redis, Kafka, Docker, ECR, ECS, ALB, Github Actions
기존 RDB 기반 대기열 데이터를 Redis로 100% 전환
메소드 단위 유닛 테스트 작성, 통합 테스트 작성
인덱스 추가를 통해 대기열 500만건 데이터 조회 성능 2배(8초=>4초) 개선
동시성 이슈 처리를 위한 DB락, Redis 분산락 적용
Kafka 도입을 통한 서버간 강결합 제거
기타
포트폴리오
교육
명지대학교
대학교(학사) | 경영정보학과
2011.03. ~ 2019.08. | 졸업
자격증
컴퓨터활용능력
2급 | 대한상공회의소
2014.10.
정보처리기사
한국산업인력공단
2018.08.