미리보기
기본 정보

3학년에 건축공학과로부터 컴퓨터공학과로 전과 하여 지난 2년 간 학교 수업과 다양한 동아리에서 백엔드 위주로 개발을 했습니다. 동시에 팀이 필요로 하는 문제를 주도적으로 발견하고 학습하였습니다. 그 과정에서 Java, Spring(Boot, Security, Data JPA), MySQL, Git, Python, FastAPI, RAG, Jmeter, Swagger, Postman 등의 기술을 사용해서 팀 프로젝트에서 개발, 서버 배포 경험이 있습니다. 기술을 배우고 이를 타인에게 공유하여 개인이 만든 가치가 팀의 가치 향상으로 이어지는 것에 큰 즐거움을 느끼며 훗날 저의 IT역량이 세상에 이로움을 가져다 주는 개발자가 되고 싶습니다.
기술 스택
Java, postman, Spring Boot, MySQL, REST API, Git, GitHub, RAG, JMeter, python3, FastAPI, swagger
프로젝트
동네 친구
학생 자치 IT 연합 동아리 UMC 4th
2023.08. ~ 2023.09.
프로젝트 설명
프로젝트 개요
1인 가구(소위 말하는 '자취생')를 위한 가계부 관리와 동네 정보 공유를 할 수 있는 통합 안드로이드 앱 서비스
개발 인원
Android: 3명
Spring Boot: 4명 (본인 포함)
Design: 1명
PM: 1명
역할 및 기여
역할 (팀장 및 백엔드)
카카오톡 소셜 로그인 기능 개발
Spring Boot, Security, OAuth2.0, JWT를 활용하여 카카오톡 소셜 로그인 기능 개발
API 기능 명세서 작성 (Notion)
기여도: 중
카카오톡 로그인 기능 개발
첫 프로젝트로 카카오톡 소셜 로그인 기능을 맡게 되어, Token 발급 API를 개발하는 역할을 담당
결과 및 평가
1개월이라는 한정된 시간 내에 빠르게 Token을 발급하는 API를 완성하지 못해, 개발 막바지에 기존 PK 기반 코드를 Token 기반 코드로 수정하는 작업이 발생, 이에 따라 기여도를 중으로 평가
전반적인 프로젝트 진행을 통해 소셜 로그인 구현에 대한 실무 경험을 쌓았고, 이를 바탕으로 향후 비슷한 기능을 효율적으로 개발할 수 있는 교훈을 얻음
배달 1/N 매칭 서비스 (Deli-SHARE)
동국대학교 수업 : 공개SW프로젝트
2023.09. ~ 2023.11.
프로젝트 소개
프로젝트 개요
동국대학교 기숙사에 거주하는 학생들의 배달 수수료 부담을 줄이기 위해, 같은 음식점에서 배달 시키는 사람들을 매칭시켜주는 채팅방 개설 웹앱
개발 인원
React.js: 2명
Spring Boot: 2명 (본인 포함)
역할 및 기여
역할 (팀장 및 백엔드)
기존 코드 개선
BloomFilter 자료구조를 활용하여 기존 매칭 코드에서 불필요한 연산을 개선
개선 전과 후의 매칭 API 성능 비교:
기존:
1000 req: 최대 3452ms
2000 req: 최대 4234ms
개선 후:
1000 req: 최대 359ms
2000 req: 최대 442ms
기타 작업
서버 배포 및 ERD 설계
JMeter를 통해 매칭 API 스트레스 테스트 진행
팀장 역할
팀 문화 형성 및 협업 촉진:
매주 대면 미팅을 통해 Spring Boot, JPA, ERD 설계, AWS 배포 방법을 팀원들과 공유
팀원들과 적극적으로 소통하며 등하교 중에도 질문을 받으며 문제를 함께 해결하는 분위기 형성
기여도: 상
협업의 중요성 실현
팀장으로서 역할을 잘 수행, 팀원의 의견을 적극적으로 수렴하고 팀워크를 높이는 데 기여
처음 만난 팀원들과 함께 진행한 프로젝트에서, 커뮤니케이션을 중시하며 팀의 전의를 잃지 않도록 이끌었음
문제 해결을 위한 노력
기존 코드의 비효율적인 부분을 BloomFilter로 개선하고 성능을 대폭 향상시킴
매칭 API 성능 개선을 통해 실제 서비스에서의 안정성을 크게 향상
성과
교수님으로부터 칭찬을 받으며 A+를 획득
현재까지도 연락을 유지하며 좋은 관계를 이어가고 있음
위의 기여도를 바탕으로 ‘상’으로 평가
NewsSnap
학생 자치 IT 연합 동아리 UMC 6th
2025.07. ~ 2025.08.
프로젝트 소개
프로젝트 개요
네이버 뉴스를 인앱에서 조회하고 카테고리별로 스크랩 및 관리할 수 있는 앱 개발
개발 인원
iOS: 3명
Spring Boot: 4명 (본인 포함)
Design: 1명
PM: 1명
역할 및 기여
역할 (백엔드)
네이버 뉴스 크롤링 및 API 연동
크롤링 방식: Jsoup + NAVER 공식 API
각 방식의 장단점 비교
NAVER 공식 API 제공 데이터:
✅
title
✅
link URL
❌
thumbnail_img
,publisher
,reply_cnt
,related news list
Jsoup 라이브러리:
✅ HTML에서 제공하는 모든 데이터 크롤링 가능
NAVER 공식 API도 함께 사용한 이유
검색 기능 개발 시 Jsoup만 사용할 경우, 모든 뉴스를 서비스 DB에 업데이트 및 유지해야 하는 비효율성 존재
API를 병행하여 추가적인 자원 없이 네이버 뉴스 검색 가능
구현 API 목록
네이버 뉴스 헤드라인 조회 API
네이버 뉴스 키워드 검색 API
네이버 뉴스 TOP 5 인기 검색어 조회 API
기여도: 상
책임 분리 및 모듈화
크롤링 모듈과 API 개발을 명확하게 분리하여 유지보수성을 고려한 설계
협업 및 GitHub Issue 적극 활용
매일 개발 과정에서 발생하는 문제점을 GitHub Issue에 업데이트하여 팀원들과 공유
이슈 발생 시 PM과의 회의 요청을 적극적으로 진행, 짧은 마감일 속에서도 원활한 협업 유도
팀워크 및 긍정적인 영향
프로젝트 종료 후 팀원들로부터 "인간적으로도, 개발자로서도 배울 점이 많았다" 는 피드백을 받음
현재까지도 팀원들과 지속적인 인연을 유지
위와 같은 성취감을 바탕으로 기여도를 ‘상’으로 평가
동국대학교 불교 단체 행사 YoungCamp 웹 사이트 제작 외주 (TaskForce Team)
기타
2024.07. ~ 2024.08.
프로젝트 소개
프로젝트 개요
주계종 불교 단체에서 동국대학교 불교 동아리 행사 홍보를 목적으로 웹사이트 제작
Task Force 팀을 구성하여 진행한 외주 프로젝트
개발 인원
TF장: 1명
PM: 2명
FE 1팀: 4명
FE 2팀: 4명
BE팀: 3명 (본인 포함)
역할 및 기여
역할 (백엔드)
행사 공지사항 CRUD 기능 개발
테스트 코드 작성
단순 기능 개발에 그치지 않고 안정적인 동작을 검증하기 위해 단위 테스트 코드 작성
기여도: 하
역할의 제한성
웹사이트 예상 트래픽 최소 10만 단위
기획부터 배포까지 1개월이라는 짧은 일정으로 진행된 프로젝트
안정적인 서비스를 제공할 경험이 부족하다고 판단되어 간단한 기능 개발을 담당
배운 점
현업 n년 차 개발자들과 협업하며 실무적인 경험 습득
트래픽 대응을 위한 캐싱, 로드밸런싱을 고려한 아키텍처 설계 관찰 및 기록
보안적인 접근 통제 코드 및 다양한 개발 방식 학습
실무 개발자들의 의사 결정 과정과 기술적 사고 흐름을 직접 경험
인플루언서 데이터를 활용한 인플루언서 역량 분석 서비스
동국대학교 수업 : 종합설계
2024.09. ~ 2024.12.
프로젝트 소개
프로젝트 개요
인스타그램 인플루언서 광고 시장을 타겟으로, 인플루언서 데이터를 활용하여 역량을 분석하고 광고주가 효과적으로 광고 대상을 선택할 수 있도록 지원하는 웹 서비스 개발
Google 검색처럼 자유 형식의 프롬프팅을 활용하여 광고주가 원하는 인플루언서를 검색하고, 해당 인플루언서들의 역량 분석 리포트를 제공
개발 인원
React.js: 2명
Spring Boot, AI: 1명 (본인)
역할 및 기여
역할 (팀장, 백엔드, AI)
sLLM(eeve)와 RAG 기법을 활용한 인플루언서 추천 기능 개발
인플루언서 데이터를 활용한 분석 지표 리포트 기능 개발
ERD 설계 및 데이터 모델링
서비스 배포
기여도: 상
핵심 기능 개발
1인 백엔드로 참여하여 API 개발이 비교적 적은 상황에서 팀 내 필요 기능을 주도적으로 고민
팀 내 핵심 기능인 '추천 시스템' 개발 경험자가 없어, 능동적으로 필요한 기술을 학습 및 적용
데모 일정에 맞춰 sLLM(eeve)와 RAG 기반 추천 시스템 구현 및 배포
팀 소통 문화 개선
팀원 모두가 내향적이었기에 초기에는 커뮤니케이션 부족으로 인해 스프린트 진행이 원활하지 않다고 판단
소통 활성화를 위해 다음과 같은 방안을 제안 및 실천
"가능한 개발은 만나서 진행하기"
"사소한 고민도 주저 없이 공유하기"
"비난이 아닌 상황을 이해하고 개선 방향 논의하기"
그 결과, 팀원 간 유대감이 형성되었고, 대면 협업을 통한 개발 효율 및 팀워크 극대화 경험
포트폴리오
자기소개
*자기소개서는 별도로 첨부 합니다.