미리보기
기본 정보
“나에게 만족은 만두와 족발뿐이다” 정신으로 현재에 안주하지 않는 개발자가 되기 위해 새로운 것들을 배우는 것에 대한 두려움이 아닌, 자신감을 가지고 꾸준히 학습하는 것을 중요시하고있습니다. 또한 개발 과정에서 얻은 지식과 경험을 개인 블로그에 기록함으로써, 지속적으로 성장하고 있습니다.
기술 스택
Node.js, NestJS, TypeScript, Prisma, PostgreSQL, Elasticsearch, Logstash, aws-ec2, github-actions, Docker
프로젝트
CONNECTION
팀 프로젝트
2023.08. ~ 진행 중
⭐ Topic
- 온라인 댄스 클래스 중개 플랫폼
🔗 Link
🖐🏻 Parts
결제 기능 개발 블로그 바로가기
- PG(Toss Payment)와 연동한 결제 기능 구현
- 데이터 정합성 보장을 위한 웹훅 구현
- 결제에 적용 가능한 일반 쿠폰, 중복 쿠폰 알고리즘 적용
- 결제 로직 동시성 이슈 테스트 및 해결
- @nestjs/bull 라이브러리를 활용한 Producer & Consumer Pattern 적용
- Event Emitter를 활용한 Watchdog 적용
검색 기능 개발
- ELK 스택을 통한 검색 서버 구축 및 데이터 파이프라인 설계
- Logstash를 활용한 DB 스케줄링및 데이터 추출 쿼리 작성
- ngram 과 한글 형태소 분석기인 Nori 를 사용해 Elasticsearch에 데이터 역색인
- 과금을 고려하여 ELK 분리후 각각 EC2프리티어 사용
- 차단, 좋아요, 북마크를 고려한 검색 쿼리 최적화
개발 속도와 협업 효율성을 높이기 위한 Custom Swagger 구현 블로그 바로가기
- DetailResponseDto, ExceptionResponseDto등 각 상황에 맞는 Custom Swagger Builder 개발
- 스웨거 작성에 투자하는 시간 최소화 및 DTO로 인한 타입 안정성 보장
- summary를 필수 인수로 선언 방식을 변경하여 코드 가독성 증가
- API당 스웨거 파일 1개(약 160개) => 도메인당 1개 (약 30개)
인증/인가 기능 개발 블로그 바로가기
- RTR 전략과 IMDB(Redis)를 사용한 JWT 구현
- 클라이언트 환경에 맞는 Strategy 구현
- OAuth(Kakao, Naver, Google) 구현
그 외
- 강사, 백오피스 관련(신고 처리) 기능 개발
- Github Action, Code Deploy, S3를 사용하여 CI/CD 환경 구성
여름
팀 프로젝트
2022.09. ~ 2023.02.
⭐ Topic
- 코로나로 인한 학교 생활의 추억이 없어지는 안타까움에서 시작한
추억 만들기 프로젝트 “💕❤️과팅 플렛폼🎈╰(°▽°)╯ “
🔗 Link
🖐🏻 Parts
- Team-Leader
채팅 기능 개발 블로그 바로가기
- Websocket 방식의 1:1, N:N 채팅 구현
- 기존 레퍼런스들을 활용하여 프론트엔드 테스트 환경 구성
- 웹 소켓 서버에서의 인증, 인가 구현
- WebSocket, Passport 라이브러리를 활용하여 WebSocket 전용 인증방식 구현
- 커스텀 데코레이터 @WebSocketGetUser() 를 통해 소켓의 헤더에 접근하여 유저 정보 추출 가능
- AsyncApi를 사용한 소켓 통신 환경에서의 스웨거 제공
그 외
- Nest.js에서 제공하는 클래스들을 활용한 AOP 구현 - 중복코드 약 4,000줄 제거
- Guard를 적용하여 TypeOrm의 Transaction 코드 중복 제거
- Exception Filter를 적용하여 Try Catch 문법 제거
- Success Interceptor를 적용하여 반환 값의 통일성 확보
- 친구 , 단체 과팅 신청 기능 개발
대외활동
모던애자일 4기
인덕대학교 개발 동아리
애자일 방법론을 기반으로 자기주도적 학습을 통해 성장하는 개발자로 거듭나기 위한 능력을 기르는 개발 동아리입니다.
- 활동기간 22.06~23.02 약 9개월 (주 5일 10시 ~ 18시)
- 동아리 회장, 백엔드
- 테크톡 (CS 주제를 선정하여 학습 후 자신이 습득한 지식을 사람들에게 공유하는 활동)진행
포트폴리오
교육
인덕대학교
대학교(학사) | 정보통신공학과(전공심화)
2023.03. ~ 2024.02. | 졸업
인덕대학교
대학교(전문학사) | 정보통신공학과
2023.02. ~ 2023.02. | 졸업