미리보기
기본 정보

저는 주인의식을 가지고 일하는 개발자입니다. - NEXT.JS개발을 경험해 보았기 때문에 간단한 테스트를 위한 화면 구성이 가능합니다. - GIT 전략과 GIT 컨벤션을 통한 팀원들과 협업을 통해 효과적으로 개발을 하였습니다. - 실제 서비스를 Docker와 NaverCloudPlatform과 DigitalOcean을 이용하여 Linux환경에서 배포를 하였습니다. - 서비스를 Gitaction을 이용하여 자동배포를 구현하였습니다.
기술 스택
Java, Spring Boot, MySQL, MongoDB, PostgreSQL, Redis, Kafka, Spring Security, JPA, Spring Batch, Docker, docker-compose, Linux, aws-s3, nginx
프로젝트
Archisemtle 학회 페이지 제작
개인
2025.01. ~ 진행 중
구성원 간 원활한 소통을 위해 웹 기반 통합 플랫폼을 구축. 학회·동아리 활동의 비효율적 소통 문제를 해결하기 위해 웹 기반 통합 플랫폼을 구축
기여한 부분
백엔드 배포 담당를 맡아서 NaverCloudPlatform을 사용하여 Docker환경에서 배포를 하였습니다.
LoadBalacer를 이용하여 http요청으로 들어오더라도 https요청으로 보내게 설정을 하였습니다.
프로젝트 멤버모집 게시판 제작을 하면서 QueryDsl을 이용하여 동적으로 필터링 할 수 있도록 구현하였습니다.
Github: https://github.com/Lab-Semtle/Semtle-Web-Server
웹페이지주소: https://archisemtle.com/
SSG.COM 클론코딩
신세계스파로스아카데미
2024.02. ~ 2024.04.
실제로 존재하는 SSG.COM을 클론 코딩하면서 이커머스 서비스에 대한 이해도를 기르고 기술향상을 위한 프로젝트
- 프론트(NEXT.JS) + 백엔드(Spring)기반 프로젝트
- 프로젝트에서 저의 역할은 프론트에서 로그인, 회원가입, 회원관련, 특가 상품 목록, 주문 화면, 리뷰를 구성하는 역할을 맡았습니다.
- 로그인은 NEXTAUTH를 통해 일반 로그인과 카카오톡 소셜 로그인을 구현하였습니다.
- GIT컨벤션과 코드 컨벤션을 정하여 다른 프론트엔드 팀원과 협업을 하였습니다.
- GIT을 통한 협업을 통해 GIT사용법을 익히고 코드 컨벤션의 중요성을 깨달았습니다.
- 프론트엔드 경험을 통해서 백엔드를 개발할 때 프론트엔드에서의 동작과정과 화면구성을 생각하며 백엔드 개발을 할 수 있는 계기가 되었습니다.
배포 주소: https://www.nocaffeine.shop
GITHUB: https://github.com/2-Nocaffeine
MeetPlus 인플루언서 팬미팅 경매 서비스
신세계스파로스아카데미
2024.04. ~ 2024.07.
인플루언서와 팬을 경매를 통해서 이어주는 경매 플랫폼
- 경매 플랫폼 특성상 경매서비스에 집중적으로 서버의 부하가 많이 걸릴 것을 생각해서 프로젝트를 MSA로 구성하였습니다.
- 프론트(NEXT.JS) + 백엔드(Spring)기반 프로젝트
- 프로젝트에서 회원서비스, 어드민 서비스, 알림서비스를 구성하였습니다.
- 회원가입을 할때 전화번호 인증을 도입하기 위해 Redis를 사용하였습니다.
- 사용자 인증을 하기 위해서 SpringSecurity와 JWT를 사용했습니다.
어드민 서비스는 인증을 위한 AccessToken과 토큰재발급을 위한 RefreshToken발급과 토큰 검증을 SpringMVC기반으로 구성하였습니다.
회원이 사용하는 메인 서비스에서는 인증을 위한 토큰발급을 SpringMVC기반으로 구성하였고, MSA로 구성된 각각의 서비스에서 인증이 필요한 서비스에서는 인증을 받고 사용할 수 있도록 Reactive기반의 SpringCloudGateway의 Filter를 통해서 토큰 검증을 통해서 검증된 사용자만 서비스를 사용 할 수 있도록 구성하였습니다.
- MSA로 나누어져 있는 서비스API를 한곳에서 볼 수 있게 하기 위해서 Gateway와 서비스에 Swagger설정을 통하여 API를 문서화 하였습니다.
- 채팅서비스와 경매 서비스에서 발생한 이벤트들을 사용자에게 알림을 보내기 위해서 알림 서비스를 구성하였습니다.
각자 구성되어있는 서비스에서 발생하는 이벤트를 수신하여 사용자에게 알림을 보내기 위해서 Kafka기반의 알림서비스를 구성했습니다.
알림을 실시간으로 사용자에게 보내기 위해서 SSE방식을 기반으로 한 SpringReactive를 통해서 알림서비스를 구성하였습니다.
서비스 배포 주소: https://fe-meetplus.vercel.app/
어드민 배포 주소: https://fe-admin-xi.vercel.app/
GITHUB: https://github.com/3-RACEHORSE
포트폴리오
교육
한국해양대학교
대학교(학사) | 컴퓨터공학전공
2018.03. ~ 2024.02. | 졸업
신세계스파로스아카데미
사설 교육 | 백엔드
2024.02. ~ 2024.07. | 졸업
대외활동
ICT멘토링
한국정보산업연합회
2023
ICT멘토링(프로보노) 프로젝트에서 팀장을 맡았으며, 장애인 분들과 디지털 약자 분들이 사용하기 쉬운 음성인식 키오스크 소프트웨어를 만드는 프로젝트를 진행 하였습니다.
자기소개
저는 발전을 추구하는 개발자입니다.
[코드 리뷰를 적극적으로 하는 사람입니다.]
신세계 스파로스 아카데미에서 팀원들과 프로젝트를 하면서 협업 툴로 GITHUB를 사용을 했습니다.
GITHUB를 통해서 저희 팀은 메인 브랜치에서 각각 기능 개발을 위한 브랜치를 따로 만들어서 기능 개발이 완성이 되면 메인에 merge하는 방법을 통해서 협업을 하였습니다. 이 과정에서 merge를 하기 위해서 팀원들이 직접 만든 기능에 대해 설명과 동작방식을 상세히 작성하여 pull request를 요청하게 하였고, 자신을 제외한 팀원 중 2명 이상에게 승인을 받아야 merge가 가능하도록 하였습니다.
이러한 과정을 통해서 팀원이 전체 프로젝트를 이해 할 수 있게 하였고 코드를 검토 받아서 개선이 필요한 사항이나 더 좋은 방식을 공유하면서 코드를 발전 시킬 수 있었습니다.
[새로운 기술을 적용하는 것을 좋아하는 사람입니다.]
스파로스 아카데미에서 경매 관련 프로젝트를 진행하면서 경매를 진행하는 부분에 사람이 몰려 많은 부하가 걸려 장애가 발생하였을때 전체 서비스로 장애가 전파 될 것이라고 예상했습니다. 그래서 장애가 모든 서비스로 전파되는 것을 방지 하기 위해서 기존에 프로젝트를 만드는 방식인 모놀로식을 사용하지 않고 MSA를 적용하여 경매서비스에 장애가 나더라도 결제나 게시글, 회원 서비스 등의 서비스는 정상 작동을 할 수 있도록 하였습니다. MSA를 진행하면서 기존에 모놀로식으로 개발했을 때 보다 서비스 간에 통신하는 방식이나 회원이 로그인을 한 뒤에 로그인을 검증하는 부분을 적용하는 것을 어떻게 할 지 고민이 되었습니다. 그러던 와중 서비스 간에 통신하는 방식중에 Kafka와 Feign client를 고민을 하였는데 비동기적으로 처리할 수 있는 Kafka를 사용하기로 하였고 팀원들과 Kafka를 공부하고 공유하여 Kafka를 통해서 이벤트가 발생했을 때 비동기적으로 각각 서비스에 통신을 하여 각자가 처리를 할 수 있게 하였습니다.
이러한 과정을 통해서 프로젝트에 새로운 기술을 쉽게 적용하는 방법을 알게되었고 기존에 설계되어 있던 프로젝트에 적용하는 법을 배울 수 있었습니다.
[의사소통이 활발한 사람입니다.]
스파로스 아카데미에서 프로젝트를 진행하면서 스프린트를 정해서 주어진 일정에 맞추기 위해서 노력하였고 팀 컨벤션을 정하여 매일 아침 30분 정도 일일스크럼을 통해서 진행상황을 공유하고 당일에 할 작업을 정했습니다. 그리고 매주 금요일마다 KPT회고를 통해서 스프린트 진행에 있어 어려웠던 점을 개선하여 다음 스프린트를 조정하였습니다.
[끊임없이 성장하고, 함께 발전하는 개발자가 되겠습니다.]
그동안 다양한 프로젝트를 통해 협업, 기술 학습, 서비스 운영 등 개발자로서 필요한 실전 경험들을 쌓아왔습니다. 개발뿐만 아니라 배포와 운영까지 직접 해보며 한 단계 더 성장할 수 있었고, 팀원들과의 소통을 통해 더 나은 코드를 만드는 법도 배웠습니다.
이제는 넓게 쌓아온 경험 위에 깊이를 더하고자 합니다. 단순히 기능을 구현하는 개발자가 아니라, 기술을 이해하고 설계하며 문제를 주도적으로 해결할 수 있는 개발자로 성장하고 싶습니다.
앞으로도 저는 새로운 기술을 두려워하지 않고, 동료와의 협업을 즐기며, 항상 더 나은 방향을 고민하는 개발자가 되겠습니다.
자격증
SQL 개발자
합격 | 한국데이터산업진흥원
2024.09.
정보처리기사
합격 | 한국산업인력공단
2024.09.