미리보기
기본 정보

지식 공유를 좋아하여, 약 조회수 1천에 육박하는 대규모 SNS Push - Pull 모델 적용기 컨퍼런스를 발표하였습니다. 약 1년 동안 꾸준하게 다양한 온라인 플랫폼에서 알고리즘 풀이를 진행하고, 깃허브에 기록해오고 있습니다. 주도적으로 다양한 프로젝트에 참여하여, 넥슨 코리아 등 여러 기업 및 단체에서 상을 수상하였습니다.
기술 스택
Java, Spring Boot, MySQL, mybatis, JPA, rabbitmq, Redis, Docker
프로젝트
Prostargram
F-lab
진행 중
개발 일상을 공유하는 대규모 소셜 네트워크 서비스 (2023.07 ~ 2024.01, 6개월)
Java, Spring, MySQL, MyBatis, RabbitMQ, Redis, Docker
대용량 트래픽이 발생할 때, 빠른 뉴스 피드 조회를 위한 Redis / RabbitMQ를 통한 Fan-Out model 도입
문제
많은 사용자가 동시에 뉴스 피드 조회를 요청할 경우, 응답 지연 발생
원인
(1) 다수의 레코드를 조회하는 read 연산과 새로운 게시물이 등록될 때마다 팔로워들의 뉴스 피드를
업데이트 하기 위한 write 연산으로 인한 DB 과부화
(2) 커넥션 풀의 크기를 초과하는 동시 요청이 들어왔을 때, 추가 요청이 대기 상태로 전환
해결
(1) Redis를 뉴스 피드 캐시로 도입하여, 팔로워가 뉴스 피드를 조회할 때 DB read 부하 감소 및 빠른 응답
반환
(2) RabbitMQ를 도입하여 작성자가 게시물을 작성했을 때, 팔로워의 뉴스 피드 캐시에 비동기적으로
업데이트하여 추가적인 write 연산 감소
총 200만 건의 데이터로 10만 페이지까지 제공했을 경우, 발생한 서비스 속도 저하 문제를 no offset으로 해결
문제
한 페이지당 20개의 데이터를 노출시킬 때, 10만 페이지까지 페이지네이션 진행 시 서비스 응답 속도 지연
발생
원인
(1) 10만 번째 페이지를 조회할 때, 1,999,890개의 행과 같이 사용하지 않은 대규모 데이터 스캔으로 인한 성능 저하
(2) 페이지 번호가 커질수록 offset에 의해 더 많은 데이터를 건너뛰므로 커리 성능 저하
해결
offset과 no offset의 트레이드 오프를 고려하여, 대규모 페이지네이션에서 불필요한 스캔을 피하기 위해 no offset을 도입
200만개에서 10만 페이지 접속 시 slow query 개선 (12s -> 2ms)
My Dream Partner
F-Lab
2024.04. ~ 진행 중
점수 산출을 통한 이상형 설문 서비스 (2024.04 ~ 2024.06, 2개월)
Java, Spring, MySQL, JPA, Docker
Google OAuth 2.0 구현 시, Access Token의 짧은 TTL로 인한 빈번한 재로그인 문제를 Refresh Token을 도입하여 해결
문제
사용자가 짧은 시간 내에 로그인을 다시 수행해야 하는 문제 발생
원인
Access Token의 TTL이 30분이기 때문에, 짧은 시간 내에 토큰이 만료
해결
TTL이 긴 Refresh Token을 도입하여, 유저의 UX 향상 및 보안 강화
포트폴리오
대외활동
파이썬 백엔드 및 메타버스 트랙
멋쟁이사자처럼 대학 10기
기여
개발자 대나무숲 서비스 CRUD 구현
프로젝트
페이스북 대나무숲 페이지를 모티브로 삼은 개발자를 대상으로 한 웹 서비스
메이플스토리 월드 슈퍼 해커톤 기획단
넥슨코리아, 멋쟁이사자처럼 대학 10기
기여
(1) 메이플스토리 리소스 특강 시리즈 기획 및 강의
(2) 메이플스토리 월드 학습 교안 제작
(3) 메이플스토리 월드 게임 [호텔 습격하기 : 황금사과 쟁탈전] 기획 및 개발 (맵 및 NPC) 및 운영
프로젝트
진영별로 경쟁하는 쿼터뷰 및 핵앤슬래쉬 게임
메이플스토리 월드 서포터즈
넥슨 코리아, 멋쟁이사자처럼 대학 10기
기여
메이플스토리 월드 게임 [괴도팬텀 : 결전의 밤] 기획 및 개발 (튜토리얼, 미니 게임 맵 및 NPC) 및 운영
프로젝트
메이플스토리의 직업군 괴도 팬텀이 주인공인 2인 어드벤처 게임
딥러닝 동아리 깡통
을지대학교
기여
(1) Neural Style Transfer를 바탕으로 Python 및 Flask를 접목한 Web 개발
(2) VGG 및 ResNet 모델을 기반으로 한 GAN(Generative Adversarial Network) 성능 비교 논문 저술
(3) 과학기술정보통신부에서 주관한 코로나19 확진자 추적을 위한 CCTV 영상 내 얼굴 식별 연구 과제 저술
프로젝트
Neural Style GAN의 대표 모델들을 기반으로 한 성능 비교
교육
을지대학교
대학교(학사) | 의료IT
2019.03. ~ 2023.02. | 졸업
자격증
정보처리기사
실기 | 한국산업인력공단(HRD Korea)
2022.11.