미리보기
기본 정보

유연하게 변화에 적응하며, 효율성과 생산성을 최우선으로 고민하는 백엔드 개발자입니다. 사용자 경험을 깊이 이해하고 최적의 솔루션을 설계하기 위해 적극적으로 소통하며 문제를 해결합니다.
기술 스택
Java, Spring, Spring Boot, MySQL, Oracle, mybatis, JPA, AWS, Docker, Git, GitHub, HTML/CSS, JavaScript
경력
스마트해썹앤팩토리
사원 | 개발팀
2022.02. ~ 2023.02. (1년 1개월)
기준정보 업로드 및 배포 프로세스 변경으로 개발 시간 약 20시간 씩 절약
DataGrip 툴 사용법을 익혀 업체별 기준정보 DB 업로드 담당을 하여
프로젝트 기초세팅 시 개발자의 시간을 월 20시간 절약
개발자가 직접 배포를 하던 프로세스를 기획자가 하도록 변경하여
개발자 시간을 월 20시간 절약
스마트팩토리 감리 산출물 1차 통과율 80% 이상으로 개선
기존 감리에서 요구사항 정의, 아키텍처 설계, 테스트 결과 보고서 등
주요 산출물을 작성하여 감리 통과율을 50%에서 80% 이상으로 개선
데일리 스크럼 도입으로 작업 현황 공유 및 소통 원활
비정기적 회의 -> 데일리 스크럼 도입
기존에 개발 업무 현황 및 일정 등 소통에 문제가 많은 점을 인지
데일리 스크럼을 통해 팀간에 현황 공유를 통해 요구사항 및 일정 조율을
명확히 하여 거래처 컴플레인 30% 이상 하락
이로인한 거래처 신뢰도 및 만족도 향상
프로젝트
롤 해 듀오
내일배움캠프
2024.12. ~ 2025.01.
목적 : '리그오브레전드' 게임을 같이 할 사람을 찾는 서비스
기술 : Java(17) SpringBoot(3.4.0) MySQL SpringDataJPA JWT AWS EC2, RDS, Lambda, Riot API, Git
인원 : 백엔드 5명
Github : https://github.com/team-summoner/lol-hae-duo
성과
실제 게임 전적 데이터를 활용하여 듀오를 찾을 수 있는 기능 구현
라이엇 API 호출 제한 개선
운영 환경을 위한 AWS 배포
라이엇 API 호출 타이밍 설계 및 비동기처리
핵심 기능인 듀오 찾기 글 등록시 활용되는 실제 게임 데이터 호출에 대한 고민
API 호출 타이밍 개선 : 듀오 글 조회 -> 듀오 글 등록 -> 계정 연동 순서로 최적화
비동기 처리 적용 : 기존 동기 처리에서 비동기 방식으로 전환하여 응답 속도 개선
스프링 이벤트 활용: 비동기 이벤트 기반 설계를 도입하여 API 호출 부담을 분산
이를 통해 API 호출 병목을 줄이고, 전체적인 사용자 경험을 개선
라이엇 API 호출 제한(Rate Limit) 대안으로 AWS Lambda 활용
AWS Lambda를 활용하여 라이엇 API와 유사한 Mock API를 구성하고, 실제 API 호출을 대체하여 테스트 환경 구축
Mocking 기법을 활용해 비즈니스 로직을 검증하고, 라이엇 API 연동 전 성능 테스트를 진행
운영 환경을 위해 AWS 배포 환경 구축
AWS EC2, RDS 및 Route53을 활용하여 실제 운영 환경에 맞춘 배포 인프라를 설계 및 구축
안정적인 외부 API 호출 환경 제공
일정관리 앱
내일배움캠프
2024.10. ~ 2024.10.
목적 : 개인의 일정을 관리할 수 있는 일정관리 어플리케이션
기술 : Java(17) SpringBoot(3.3.3) MySQL SpringDataJPA QueryDSL JWT AWS EC2
인원 : 백엔드 1명
Github : https://github.com/hubaek/Project_Todo
성과
확장성 높은 도메인 및 패키지 구조 설계
JPA + QueryDSL을 활용하여 일정 조회 페이징 최적화
JWT 인증 및 인가 필터 적용
중앙 집중식 예외 처리(@RestControllerAdvice, CustomException) 적용
AWS EC2 기반 배포
패키지 및 도메인 설계 : 유지보수성과 확장성을 고려한 구조
3Layered Architecture를 통해 코드 유지보수성을 개선하고, 도메인 간 결합도를 낮추어 확장성을 강화
패키지 구성 : common, config, exception, filter, jwt, domain
도메인 구성 : 회원, 게시글, 댓글(CRUD 기능 구현)
ID 참조방식을 적용하여 도메인 간의 결합도를 낮추고 확장성을 고려한 설계 진행
효율적인 데이터 조회를 위한 페이징 및 QueryDSL 적용
페이징 처리: Pageable 인터페이스를 활용하여 일정 목록 조회 시
서버 부하를 최소화
QueryDSL 적용: 복잡한 쿼리를 JPA보다 더 최적화된 방식으로 처리
일정 조회 API에서 필터링 및 검색 기능 추가하여 사용자 경험 개선
보안 강화를 위한 JWT 기반 인증 및 인가 필터 구현
JWT를 활용하여 토큰 기반 인증/인가 시스템 구현
Filter를 활용해 JWT 검증 및 사용자 인증 처리
일관된 예외 처리와 명확한 에러 응답을 위한 중앙 집중식 설계
@RestControllerAdvice와 @ExceptionHandler를 활용하여 API 전반의
예외 처리를 표준화
CustomException과 ErrorCode를 도입하여 도메인별 예외 상황을 명확하게 정의
클라이언트가 일관된 에러 응답을 받을 수 있도록 HTTP 상태 코드와 메시지 통일
EZMeal쇼핑몰
정석코딩
2023.06. ~ 2023.08.
목적 : 현대인을 위한 간편식, 건강식 쇼핑몰
기술 : Java(11) Spring(5.2.21) MySQL MyBatis JSP ApacheTomcat(9.0.74)
인원 : 백엔드 3명 프론트 1명
Github : https://github.com/hubaek/ezmeal_member
성과
14개 테이블을 포함한 상품 ERD 설계 및 데이터 모델링 최적화
회원가입, 로그인, 수정, 탈퇴 등 회원 관리 기능 구현
MyBatis를 활용한 동적 SQL 처리 및 복잡한 쿼리 최적화
관리자 페이지에서 회원 관리 기능 구현
상품 ERD 설계 : 확장성과 최적화를 고려한 데이터 모델링
쇼핑몰의 핵심 기능인 상품 데이터 모델링 담당
상품, 카테고리, 재고 등 총 14개 테이블 설계
정규화를 통해 데이터 검색 속도 개선
향후 대용량 데이터 처리와 확장성을 고려한 설계 진행
회원 관리 시스템 구축: 사용자 및 관리자 기능 구현
회원가입, 로그인, 회원 정보 수정, 회원 탈퇴 기능 개발
관리자 페이지에서 회원 조회 및 관리 기능 추가
MyBatis 기반으로 회원 데이터 CRUD 기능 구현
JSP로 회원관련 페이지 및 마이페이지 관리자 로그인 UI 구현
MyBatis 적용 및 동적 쿼리 최적화
MyBatis를 활용한 SQL 매핑 및 복잡한 쿼리 처리 최적화
조건에 따라 동적으로 SQL을 생성하는 기능 구현
SQL 실행 성능을 높이기 위해 JOIN최적화 적용
MyBatis XML Mapper와 Annotation 방식을 적절히 활용하여 유지보수성을 고려한 구조 설계
포트폴리오
교육
진주보건대학교
대학교(학사) | 사회복지
2015.03. ~ 2017.02. | 졸업
대외활동
Spring 백엔드 개발 과정
내일배움캠프
Java 및 Spring을 기반으로 백엔드 개발 심화 학습 및 프로젝트 경험
Spring, JPA, QueryDSL, 데이터베이스 최적화, 성능 개선 등 실무 기술 집중 학습
개인 프로젝트 2개, 팀 프로젝트 3개 수행
실제 서비스 개발 환경을 고려한 프로젝트 기획, 개발, 최적화 및 배포 경험
웹개발자 취업과정(백엔드)
정석코딩
Java, Spring, MyBatis, SQL, 웹 최적화 및 보안 등 백엔드 개발 심화 학습
객체지향 설계, 테스트 코드, 데이터베이스 모델링 학습
팀 프로젝트 1개 수행
팀 협업을 통한 실무와 비슷한 환경의 개발 경험
자격증
SQL 개발자
한국데이터베이스진흥센터
2024.09.