미리보기
기본 정보

‘왜?’를 끊임없이 고민하고, 그 질문을 바탕으로 설계하고, 개선하는 백엔드 개발자입니다.
자기소개
학습과 실험을 통한 깊이 있는 기술 습득
항상 "왜?"라는 질문을 던지고, 그 답을 찾아가는 방식으로 학습을 이어갑니다.
개인 레포지토리에서 실험을 통해 새로운 기술을 습득하고, 실제 프로젝트에 미칠 영향을 고민합니다. 이를 통해 단순히 기술을 배우는데 그치지 않고, 새로운 도전에 대한 준비를 이어갑니다.
안정성 있는 가치 제공
안전한 시스템을 구축하는 데 집중하며, 결제 시스템, 동시성 제어, 모니터링 등의 영역에서 서비스 안전성을 강화한 경험이 있습니다. 중앙화된 로그 시스템을 구축하여 장애 대응 시간을 단축하고, 알림 봇을 통해 서비스의 장애 인지 시간을 대폭 감소시켰습니다.
주도적인 문제 해결
개발자들이 겪는 불편함을 주도적으로 해결하는것을 선호합니다. 코드 레벨뿐만 아니라 자동화, 워크플로우 개선, 인프라 구축 등 다양한 측면에서 문제를 해결하며, 프로젝트 전체를 바라보는 넓은 시각으로 노력을 기울이고 있습니다.
경력
주식회사말달리자
Backend Developer | SW 개발 | 재직 중
2024.06. ~ 재직 중 (1년)
O2O 플랫폼 SPONJY 개발 및 운영 전체 담당
SPONJY App 100% 개발 및 운영
결제 시스템 및 동시성 처리
결제 승인/실패/환불 등 결제 프로세스 구축
전략/팩토리 패턴 기반 환불 정책 설계로 유연한 확장 구조 구현
동시성 환경을 고려한 재고 검증 로직 설계 및 테스트 코드 작성
인프라 구축 및 운영 최적화
Github Actions 기반 CI/CD 자동화
AWS를 활용한 인프라 설계 및 구축
Grafana, Loki, Prometheus 모니터링 시스템 구축
프로젝트
SPONJY
주식회사 말달리자
2024.06. ~ 진행 중
스포츠 매칭 및 예약 앱과 구장주용 웹을 포함한 O2O 플랫폼 SPONJY 개발 및 운영
Java17, SpringBoot, Spring Data JPA, Querydsl, MySQL, Docker, Github Actions, Grafana, Loki, Promethues
AWS (EC2, RDS, Elasticache, Lambda, ELB, Route53, S3, CloudFront, EIP, WAF, SNS), Nginx
결제 호스팅사 연동을 통한 결제 시스템 구축 및 운영
결제 승인, 실패에 대한 프로세스 설계 및 환불 기능 구현
결제 호스팅사 API와 웹훅을 연동하여 결제 승인,실패, 환불 등 프로세스들을 설계, 비즈니스 로직 구현
JUnit 으로 테스트 코드를 작성하여 결제 오류 가능성을 최소화하고, 시스템의 신뢰성을 향상
호스팅사 API 사용으로 인한 제약으로 인해 기능 구현에 한계 도달, 이를 임시 데이터 관리로 개발하여 문제 개선
전략 패턴과 팩토리 패턴 기반의 환불 정책 설계를 통해, 정책 추가 시 코드 변경 없이 유연하게 확장 가능한 구조를 구현
결제 후 트랜잭션 롤백 이슈 해결 및 응답 속도 95% 향상 (블로그 정리글)
결제 처리 후 후속 로직(알림 전송 등)에서 예외가 발생해 전체 트랜잭션이 롤백되는 문제를 발견
이벤트 발행과 비동기 처리를 통해 트랜잭션 및 관심사를 분리하여 문제 해결
평균 응답 속도 95% 향상, TPS 10% 증가
재고 검증 동시성 처리 (블로그 정리글)
비관적 락을 활용하여 재고 검증 동시성 처리 기능 구현
테스트 코드를 작성하여 100명의 사용자가 30개의 아이템을 동시에 결제할 때, 정확히 30명만 결제가 완료되도록 검증함으로써 결제 과정의 안전성과 무결성을 향상
지도 기반 주변 좌표 조회 성능 개선
주변 좌표 공간 좌표를 조회하는 쿼리문에서 항상 Full Table Scan이 발생하는것을 발견
R-Tree 기반의 공간 인덱스를 적용하여, 쿼리문의 시간을 1.2초 -> 0.03초로 단축 (블로그 정리글)
배포 자동화 및 무중단 배포 구축
Blug-Green 무중단 배포 구축 및 CI / CD 자동화 파이프라인 구축
Github Actions를 활용하여 CI/CD 자동화 파이프라인을 구축하여 빌드 및 배포 과정 자동화
Caller, Callee 구조로 워크플로우를 모듈별로 분리하여 가독성과 유지보수성 개선
Nginx를 활용한 Blue-Green 무중단 배포를 적용하여 배포 중에도 다운 타임 없이 서비스가 유지되도록 개선
Auto Taking Workflow를 통한 버전 관리 자동화
짧은 주기의 배포와 빠른 피드백을 제공함으로써 릴리즈된 프로덕트의 버전 관리를 일관되게 유지하기 어려운 문제 발견
태그 버전을 자동으로 관리하는 Auto Taking Workflow를 작성하여 Tag 생성과 릴리즈 산출물 관리를 자동화
Self Hosted Runner 적용
Github Actions의 실행 시간이 초과되어 자동화된 워크플로우를 더 이상 사용할 수 없는 문제가 발생
Self-hosted runner를 구축하여 워크플로우 실행 환경을 자체적으로 운영하여 비용 절감
모니터링 시스템 구축
로그 모니터링 시스템 구축
운영 중에 특정 로그나 오류 발생 시 탐지 후 원인 분석까지 평균 40분 걸리는 문제 발생
Promtail, Loki, Grafana를 통해 중앙화된 로그 모니터링 시스템을 구축하여 탐지 및 원인 분석 시간을 평균 8분으로 단축하여 장애 대응 속도를 개선 (블로그 정리글)
API 모니터링 시스템 구축
Prometheus로 API 트래픽과 성능 지표를 모니터링할 수 있는 시스템 구축
기술 스택
Java, Spring Boot, JPA, querydsl, AWS
대외활동
코드잇 스프린트 수강생 팀리드
코드잇
2024
프론트 엔드 5명, 디자이너 1명의 소규모 팀 리드
API 개발, 데이터베이스 모델링, 인프라 구축을 진행하였습니다.
개발 일정을 조율하고, 개발 지식을 공유하여 팀원들의 성장을 이끌고자 노력하였습니다.
유튜버 여행 동선 웹 사이트 개발을 주도하며, 기간내에 수강생들의 첫 배포를 이끌었습니다.
HGU DreamLandThon
한동대학교
2023
한동대학교에서 주관하는 AI 해커톤 우수상 수상
성 상담 및 몸 건강 큐레이션 AI 서비스를 개발하여 우수상을 수상하였습니다.
디자이너, 기획자, 개발자 들과 함께 참여하였습니다.
IT 업계 현업자를 주관으로 멘토링에 참여하였습니다.
포트폴리오
교육
영남대학교
대학교(학사) | 컴퓨터공학
2018.03. ~ 2024.02. | 졸업
자격증
정보처리기사
1급 | 한국산업인력공단
2023.09.