미리보기
기본 정보
기술 스택
Java, Spring Boot, MSA, AWS, Redis, Docker, Kafka, Spring Security, JPA, MySQL, PostgreSQL
자기소개
🚀 고객과의 신뢰 형성으로 만들어낸 성과
ACN 코리아에서 근무할 당시 개통, 고객 지원(CS), 배송, 사무 업무 등을 맡아 처리하였습니다. 저희 지점은 주로 연령대가 높은 고객분들이 방문하여 개통 업무를 보시는 경우가 많았기에, 상담 시 더욱 신중하고 공손한 태도로 응대하려 노력했습니다. 고객과의 친밀감을 형성하기 위해 근무 시간 외에도 식사를 함께하며 신뢰를 쌓으려 노력했고, 이러한 노력이 결실을 맺어 저희 지점은 다른 지점에 비해 많은 고객분들이 애용해 주셨습니다.
🧬 빠른 적응력과 끈기 있는 자세로 새로운 환경에 도전합니다
다양한 분야에서의 업무 경험을 통해 빠른 적응력과 끈기 있는 자세를 길렀습니다. 생산직 근무 시 높은 업무 강도 속에서도 자진하여 특근에 참여하며 빠르게 성과를 인정받은 경험은 새로운 도전과 변화에 강한 적응력을 발휘할 수 있도록 하였습니다. 이러한 경험은 IT 개발 프로젝트에서도 새로운 기술을 습득하고 문제를 해결하는 데 큰 도움이 되었습니다. 예를 들어, Sparta-Banking 프로젝트에서 처음 접한 Kafka를 활용해 비동기 시스템을 구현해야 했을 때, 빠르게 학습하고 적용하여 회원가입 알림을 비동기로 처리하고 성능을 향상시켰습니다.
프로젝트
sparta-banking
MSA 기반의 은행 뱅킹 시스템
2024.09. ~ 2024.10.
📌기술 스택
Java, Spring Security, MSA, JPA, Kafka, Redis, CI/CD, AWS, Zipkin, Grafana, Postgresql, Jmeter
🚲본인 역할
Gateway 및 Spring Security 인증/인가 처리
JWT 인증을 통해 클라이언트 요청을 검증하고, 유효한 요청만 각 서비스로 라우팅하여 보안성을 강화
Spring Security 기반의 인가 처리를 통해 사용자 권한에 따른 세분화된 접근 제어를 구현
회원가입 비동기 알림 및 보상 트랜잭션 처리
회원가입 성공 시 Slack 알림을 Kafka로 비동기 처리하며, Slack 서버 오류 시 Fallback 메서드를 통해 보상 트랜잭션으로 회원가입 롤백을 수행
비밀번호 오류 및 계정 잠금 처리
비밀번호 오류 시 부모 트랜잭션의 에러와 관계없이 트랜잭션을 분리시켜 시도 횟수 증가
3회 이상 오류 시 계정 잠금 처리와 비밀번호 초기화를 구현하여 보안성 강화
로그아웃 처리 및 블랙리스트 토큰 관리
JWT 기반 로그아웃 시 블랙리스트 토큰 방식을 사용하여, 로그아웃된 사용자의 토큰을 즉시 무효화
Redis를 활용한 캐싱 처리
자주 조회되는 데이터에 대한 캐싱을 구현함으로써 데이터 접근 속도를 향상시키고 시스템 부하를 감소
대출 데이터 자동 기록 시스템
월별 및 연도별 대출 가입 건수와 상환 금액을 스케줄러을 통해 자동으로 기록하는 기능을 구현하여 데이터 관리의 효율성을 향상
💮 트러블 슈팅
캐시 무효화 및 갱신으로 인한 TPS 저하
문제 상황
직원 정보 수정 시 캐시 무효화 및 갱신으로 성능 저하 발생
개선 방법
캐시 어노테이션 제거
TTL 120초 → 20초로 단축 (일관성 문제 최소화)
결과
TPS 72.7/sec -> 477.6/sec로 개선
응답 속도 최적화 및 일관성 유지 달성
로그인 시 비밀번호 오류 처리 트랜잭션 문제
문제 상황
로그인 처리 중 예외 발생 시 전체 트랜잭션이 롤백되어 로그인 시도 횟수 증가 작업도 롤백됨으로써 시도 횟수가 제대로 처리되지 않음
개선 방법
로그인 시도 횟수 증가 로직을 별도 서비스로 분리하여 독립적인 트랜잭션으로 관리, Propagation.REQUIRES_NEW 설정을 적용하여 예외 발생 시에도 시도 횟수가 정상적으로 증가하도록 처리
결과
비밀번호 오류 시에도 시도 횟수 증가가 정상적으로 처리되며, 독립적인 트랜잭션 관리로 시스템 안정성 강화
nuttty-delivery
MSA 기반 물류 관리 및 배송 시스템 플랫폼
2024.09. ~ 2024.09.
📌기술 스택
Java, Spring Security, Querydsl, MSA, JPA, Redis, Docker, Zipkin, PostgreSql
🚲본인 역할
AOP 활용한 로그 관리
AOP를 통해 메서드 실행을 포인트컷으로 설정하여, 중앙 집중식 로그 관리를 구현하고 효율적인 디버깅과 모니터링을 지원
Config 서버 기반 yml 설정 관리
GitHub에 설정이 변경되면 Config 서버를 통해 이를 자동으로 반영하여 서비스의 일관성과 효율성을 유지.
Gemini AI 기반 주문 정보 요약 전송
매일 오전 8시 허브별 주문 데이터를 분석하여 요약된 정보를 공통 배송 담당자에게 Slack으로 자동 전송, AI 기반 처리로 업무 효율성 향상.
날씨 API 기반 배송 지원
매일 오전 6시 허브별 날씨 데이터를 번역하여 각 업체 배송 담당자에게 Slack으로 전송, 배송 환경 예측 지원.
Redis를 활용한 캐싱 처리
자주 조회되는 데이터에 대한 캐싱을 구현함으로써 데이터 접근 속도를 향상시키고 시스템 부하를 감소
💮 트러블 슈팅
URL 인코딩 문제 해결
문제 상황
UriComponentsBuilder로 URL을 생성할 때 serviceKey의 이중 인코딩 문제로 인해 지속적인 인증 오류 발생
개선 방법
URI 클래스를 사용하여 자동 인코딩을 방지
UriComponentsBuilder의
build(false)
설정으로 수동 URI 구성도 가능
결과
이중 인코딩 문제 해결 및 인증 키 처리 정상화, URL 생성 오류 감소
Redis 페이지 검색 조건 키 문제 해결
문제 상황
Redis 캐시 키가 page와 size로만 설정되어, 다양한 검색 조건이 반영되지 않아 잘못된 데이터가 조회되는 문제 발생
개선 방법
검색 조건과 정렬 조건의 해시 코드를 포함한 캐시 키 생성(@Cacheable 키 설정 개선) 및 캐시 만료 시간 조정
결과
검색 조건이 반영된 데이터가 정확히 캐싱 및 조회되며, 최신화된 데이터를 유지
경력
ACN코리아
사원 | 일반
2021.02. ~ 2022.07. (1년 6개월)
고객 서비스(CS) 관리
유심 개통 및 상품 주문 등의 업무
발주 및 재고 관리
상품 발주 프로세스를 체계적으로 관리하고, 재고를 적정 수준으로 유지하여 원활한 상품 공급을 보장
배송 관리
고객이 원하는 일정에 맞춰 정확하게 상품이 도착하도록 관리
교육
동서대학교
대학교(학사) | 경영학과
2015.03. ~ 2023.02. | 졸업
대외활동
Spring 심화과정
팀스파르타(주)
백엔드 챌린지 – TDD
원티드 프리온보딩
풀스택 양성자 과정
부산더조은직업전문학교