미리보기
기본 정보
“꾸준하고 끈기있는, 무궁무진한” 꾸준하고 끈기있게 모든 일을 헤쳐나가는 신입 개발자 황세민입니다. 지극히 단순 호기심으로 개발을 시작했었으나 지금은 개발을 통해 더 나은 사회를 만들어 갈 수 있을 것이라는 신념을 가지고 사회의 발전에 기여하고자 개발을 시작하게 되었습니다. 열악한 환경에서도 스스로 개발자로서의 자부심과 역량을 키우고자 교육과 공부에 열과 성을 다하고 있으며 동료들과 지식을 공유하여 더불어 발전하고 성장할 수 있도록 노력해왔습니다. 어려운 난제를 동료들과 함께 풀어내고 도움을 주고 받을 때 감사함과 보람을 느낍니다.
기술 스택
JavaScript, TypeScript, NestJS, Node.js, Prisma, MongoDB, Mongoose, express.js, GitHub, github-actions, aws-ec2, aws-rds, aws-s3, Redis, Socket.io
프로젝트
숨진사람(숨은 진실을 찾는 사람들)
기타
2024.05. ~ 진행 중
♦ Work Space
https://bow-slip-bbb.notion.site/07f82b9909c6458c8ac6387bfcc75d6e?pvs=4
♦ GitHub
https://github.com/HA0N1/detective-project
프로젝트 소개
스파르타 부트캠프의 최종 프로젝트
국내 곳곳에 숨어있는 탐정 사무소와 직간접적으로 소통이 가능한 탐정 중개 플랫폼입니다. 늘어나는 탐정의 수요에 따라 국내 탐정들의 활동 범위를 확장시키고 클라이언트의 접근성을 향상시키고자 기획하게 되었습니다.
클라이언트의 익명성 보장하기 위한 안심번호 서비스, 의뢰에 대한 평가 및 리뷰 기능, 사용자와 탐정 간의 원활한 소통을 위한 실시간 채팅 기능, 사용자의 요구 사항에 맞는 탐정을 조회할 수 있는 조회 기능 등이 제공되어 누구나 쉽고 투명하게 이용 할 수 있는 서비스 입니다.
초 당 5,000건의 동시 트래픽을 감당하는 채팅 서비스와 채팅 메세지 송신/수신 응답 1000ms 이내를 목표로 하였습니다.
담당 업무 및 기여
Auth
의뢰인/탐정 회원가입 및 로그인, 로그아웃
사업자등록자 증명 Open API 를 사용한 기업 신뢰성 검증
JWT 를 사용한 authorization 쿠키 세팅 및 Guard 활용
Chat
Socket.Io를 사용하여 익명성이 보장되는 실시간 메시지 서비스 구현
Socker 서버 간의 메시지 교환을 위한 adapter Redis Pub/Sub 구현.
NestJS 에서 제공하는 MSA 패키지를 사용
사용자의 소켓과 join 룸을 효율적으로 관리하기 위한 쿼리 튜닝
테스트 코드 작성
Auth API 안정성 및 신뢰성을 확보 및 지속적 통합(CI)을 위한 테스트 코드 작성(Jest)
공통
Docker
GitHub Actions CI/CD
workspace 관리 및 기술 기록
국민참여재판
기타
2024.03. ~ 2024.05.
♦ GitHub
https://github.com/kimsungmin2/Participatory-Trial
♦ Brochure
https://teamsparta.notion.site/bc969e269fff46d28d039ecf0055cc08
프로젝트 소개
스파르타 부트 캠프의 최종 팀 프로젝트로,
네티즌이 직접 흥미로운 이슈에 대해 대법원 재판 판례에 근거하여 토론, 투표할 수 있는 커뮤니케이션 웹 서비스입니다.
게시판은 크게 자유/유머/정치/재판 게시판으로 구분되고 재판 게시판에서는 채팅과 동시에 대법원 판례를 키워드로 검색할 수 있습니다.
채팅/댓글 및 좋아요 기능이 제공됩니다. 사용자는 비 로그인 시에도 채팅 기능을 이용하여 실시간 투표에 참여할 수 있습니다.
Elasticsearch가 적용된 검색 창에서는 주제에 알맞은 판례에 대한 키워드를 검색할 수 있습니다.
현재 참여한 채팅 알림과 FCM을 활용하여 실시한 핫 게시글 투표 알림이 전송됩니다.
ELK stack을 사용한 모니터링/로깅이 가능하며, 시간대별 트래픽이 몰리는 구간을 측정할 수 있습니다.
담당업무 및 기여
자유게시판 및 댓글 API
다양한 주제를 자유롭게 공유할 수 있는 게시판 및 댓글 CRUD
효과적인 데이터 로딩을 위한 페이지네이션
S3 이미지 업로드
테스트 코드
게시판 및 댓글 API 의 비즈니스 로직의 안정성 확보와 CI/CD를 위한 테스트 코드 작성(90%)
스모크 및 부하 테스트
Artillery 를 사용한 주요 API 안정성 테스트 및 퍼포먼스 개선에 기여하였습니다.