미리보기
기본 정보

도전과 혁신을 두려워하지 않는 개발자입니다. MSA 환경에서 다양한 서비스 간 통신을 설계하고 최적화하며, JPA, QueryDSL, Redis, JWT 인증 등 최신 기술 스택을 활용하여 확장성과 성능을 극대화하는 데 집중해 왔습니다. 또한, Eureka 기반의 서비스 디스커버리와 OpenFeign을 통한 마이크로서비스 간 통신을 구현하며 분산 시스템의 안정성과 효율성을 확보했습니다. 협업과 지속적인 학습을 통해 문제를 해결하는 능력을 키워왔으며, 복잡한 시스템도 간결하고 명확하게 구성할 수 있는 개발자입니다.
기술 스택
Java, Spring, Spring Boot, MySQL, PostgreSQL, Redis, MSA, eureka, k6, JMeter, Docker
프로젝트
대규모 AI 시스템 프로젝트: 물류 관리 및 배송 시스템
내일배움캠프
2025.03. ~ 2025.03.
Spring Boot 기반의 물류 관리 및 배송 시스템을 구축하기 위해 Eureka Server-Client 아키텍처를 바탕으로 설계했습니다. 주문, 상품, 배송, 허브, 메시지 등의 서비스를 독립적인 마이크로서비스로 분리하여 유연한 확장성과 유지보수성을 극대화했습니다. 또한, 도메인 주도 설계(DDD)를 적용하여 각 서비스의 비즈니스 로직을 명확히 구분하고 책임을 효과적으로 분리함으로써 시스템의 견고함을 강화했습니다. 데이터 정합성과 처리 효율성을 균형 있게 유지하며, MSA 환경의 복잡성을 극복하는 실전 경험을 목표로 합니다. 더불어 AI 기반의 최적 발송 시한 예측과 Slack을 통한 허브 담당자 실시간 알림 기능을 구현하여 실시간 대응성과 편의성을 향상시켰습니다.
개발기간 : `25.03/13 ~ `25.03/25
구성원: BE(4)
역할 : 백엔드 개발자
목표: 회원/인증, 메시지, 게이트웨이 서비스를 구현하여 MSA 환경에서 안전하고 효율적인 인증 및 메시지 시스템을 구축하는 것을 목표로 합니다. JWT 기반 인증 시스템을 구축하고, Redis를 활용하여 리프레시 토큰을 관리합니다. Gemini API와 Slack API를 연동하여 실시간 메시지 알림 기능을 구현하고 K6를 활용해 성능 테스트를 수행합니다. Spring Cloud Gateway를 통해 서비스 접근을 관리하고 OpenFeign을 활용하여 통신 효율성을 최적화합니다. 이를 통해 전체 시스템의 데이터 정합성과 신뢰성을 확보합니다.
책임:
회원/인증 서비스
JWT 기반 인증 및 권한 관리 기능 구현
Redis를 활용한 리프레시 토큰 관리, 토큰 로테이션 및 블랙리스트 기능 구현
회원가입, 로그인, 토큰 재발급, 로그아웃 API 개발 및 인증 로직 최적화
메시지 서비스
Gemini API를 사용한 메시지 생성 기능 구현
Slack API 연동을 통한 실시간 알림 전송 기능 구축
K6를 이용한 성능 테스트를 통해 메시지 서비스의 처리 효율성 검증 및 최적화
게이트웨이 서비스
Spring Cloud Gateway를 사용한 API 요청 라우팅 및 인증 처리 구현
OpenFeign을 활용한 서비스 간 통신 최적화
인증 정보 전달 및 유효성 검증 기능 설계 및 개발
API 문서화 및 데이터베이스 설계
모든 서비스에서 Swagger를 사용하여 API 문서 작성 및 정리
각 서비스의 데이터베이스 설계 및 모델링 작업 수행
프로젝트 관리 및 배포
GitHub 프로젝트를 활용한 이슈 관리 및 협업 워크플로우 구성
서비스별 이슈 생성, 진행 상황 모니터링 및 기록 관리
기존의 Docker Compose와 Dockerfile을 수정하여 모든 서비스가 정상적으로 실행되도록 개선
AI 활용 비즈니스 프로젝트: 주문 관리 플랫폼
내일배움캠프
2025.02. ~ 2025.02.
Spring Boot 기반의 모놀리식 아키텍처로 개발된 주문 관리 플랫폼 프로젝트로, 온라인 주문과 매장 내 주문을 모두 통합 관리할 수 있는 백엔드 시스템을 구축했습니다. 이 프로젝트에서는 프론트엔드 개발도 병행하여 빠른 프로토타입 개발을 목표로 하였으며, 사용자 경험을 개선하기 위해 생성형 AI API를 연동하여 상품 설명 자동 추천 기능을 구현했습니다. 이 과정에서 확장성과 유지보수성을 고려하여 시스템 구조를 설계하고, 효율적인 데이터 처리 및 API 설계를 통해 안정성을 확보하였습니다.
개발기간 : `25.02/12 ~ `25.02/25
구성원:BE(4) FE(1)
역할 : 백엔드 개발자
목표 : 가게와 카테고리 관리 기능을 구현하여, 온라인 및 매장 내 주문 시스템에서 효율적으로 가게 정보를 등록, 수정, 조회할 수 있도록 하고, 각 가게의 카테고리 구조를 유연하게 관리하여 사용자 경험을 개선하는 것을 목표로 하였습니다. 또한, 리뷰 및 평점 기능을 효율적으로 처리하기 위해 RabbitMQ를 활용하여 비동기 방식으로 N+1 문제를 해결하고 성능을 최적화하는 것을 목표로 하였습니다.
책임:
가게 관리 기능 구현
가게 정보의 등록, 수정, 삭제, 조회 기능 개발
관리자 화면 연동 및 데이터베이스 설계 최적화
카테고리 관리 기능 구현
메뉴 카테고리의 CRUD 기능 개발 및 유연한 데이터 모델링 설계
카테고리 API 설계 및 문서화
리뷰 및 평점 기능 구현
RabbitMQ 도입으로 인한 성능 향상을 확인하기 위해 1만 건의 데이터로 테스트 진행
N+1 문제 발생 여부 확인을 위한 데이터 복제 및 평점 순환 설정(1~5점, 평균 3.0) 적용
비동기 처리 확인을 위한 sleep 설정 및 성능 비교 검증
API 설계 및 문서화
RESTful API 설계 및 Swagger 문서화 적용
JUnit 기반의 단위 테스트 및 통합 테스트 작성
API 요청/응답 검증을 통한 안정성 확보
회원/인증 기능 지원
JWT 토큰 로테이션 및 JWT 블랙리스트 구현을 도와 보안성 강화
Redis를 활용한 리프레시 토큰 관리 기능 구현을 지원하여 인증 처리의 효율성을 개선
포트폴리오
자격증
정보처리기사
한국산업인력공단(HRD Korea)
2023.11.
정보처리산업기사
한국산업인력공단(HRD Korea)
2017.11.
SQL 개발자(SQLD)
한국데이터산업진흥원
2023.10.
컴퓨터활용능력1급
대한상공회의소
2017.04.
네트워크관리사(2급)
한국정보통신자격협회
2017.06.
자기소개
저는 끊임없는 학습과 다양한 경험을 추구하는 임대일입니다.
개발자로서의 성장은 문제를 해결하고 개선해 나가는 과정에서 이루어진다고 믿습니다. 그래서 저는 기술적 한계를 줄이고 문제 해결 결과를 객관적인 지표로 도출하기 위해 단칸방의 돈키호테처럼 공부하고 성장하는 것을 즐깁니다.
새로운 지식과 기술을 배우는 것은 단순히 기능 구현을 위한 도구를 익히는 것을 넘어, 프로젝트의 기획을 깊이 공감하고 서비스로 표현할 수 있는 역량을 키우기 위한 과정이라고 생각합니다. 저는 사용자에게 가치 있는 경험을 제공하기 위해 기술을 활용하는 방법을 끊임없이 고민하고, 개선해 나가려는 태도를 중요하게 생각합니다.
또한, 협업과 의사소통을 중시하며, 코드의 품질을 유지하면서도 확장성과 유지보수성을 고려한 설계를 지향합니다. 문제를 정의하고 해결하는 과정을 두려워하지 않으며, 항상 더 나은 방법을 찾기 위해 노력합니다.
앞으로도 지속적인 학습과 경험을 통해 더 나은 시스템을 만들고, 사용자에게 진정으로 도움이 되는 서비스를 제공하는 개발자가 되기를 목표로 하고 있습니다.