미리보기
기본 정보
사용자들의 자산을 다루는 서비스를 개발해 오며, 사용자들이 믿고 사용할 수 있는 서비스를 만들고자 합니다. 스타트업에서 근무하며, 테이블 설계부터 프로젝트 배포 및 운영까지 프로젝트의 A - Z를 직접 진행한 경험이 많습니다. 최근 B2B 목적 서버를 주로 관리 및 운영하며, 안정적인 서비스 제공을 위한 모니터링/알림 시스템 구성에 관심이 많습니다.
자기소개
최근까지 B2B 목적의 API 서버를 개발 및 주도적으로 운영 및 관리하였습니다. 예외 상황에 빠르게 대응하여 해결한 경험이 많으며, 안정적인 서비스 제공을 위해 고민하는 것을 좋아합니다.
- 서버에서 발생한 예외 정보를 Slack을 통해 알림으로 전송하는 모니터링 구성
- 운영 중인 AWS EC2의 상태 모니터링 구성 (AWS Chatbot, AWS SNS)
- AWS Cloudwatch 활용한 로깅 환경 구성
- 기존 단일 HTTP API 서버를, Nest.js 모노레포 기반의 작은 단위 서버로 분리
- testcontainers 라이브러리 활용하여, 유닛 테스트 작성시 모킹 최소화
필요에 따라, 새로운 기술을 시도하고 도입해 보는 것을 좋아합니다.
- Yarn Berry 도입하여, 여러 서버로 분리된 프로젝트의 Docker 이미지 빌드 속도 개선
- Microsoft Azure 기반으로 인프라 구성
꾸준함이 결국 저를 성장시킬 수 있음을 믿습니다.
- 새로 배운 내용, 혹은 문제 해결한 내용에 대해 정기적으로 블로그 포스팅 작성
기술 스택
Node.js, TypeScript, NestJS, PostgreSQL, TypeORM, AWS, Azure, Docker
경력
주식회사인프랩
Product Engineer | 재직 중
2024.08. ~ 재직 중 (3개월)
메셔(Mesher Inc.)
Software Engineer | Backend Unit
2022.07. ~ 2024.07. (2년 1개월)
- 웹 백엔드 서버 개발 (Nest.js, PostgreSQL, TypeORM)
- 서버 CI/CD 프로세스 구성 (Github Actions, Docker, AWS)
- 사내 Azure 최초 도입 시 배포 환경 구성
- 서버에서 예외 발생시, Slack을 통한 서버 상태 알림 시스템 구성
- 운영 중인 AWS EC2 인스턴스 이상 상태 알림 시스템 구성 (AWS SNS, AWS Chatbot, Slack)
- 사내에 Yarn Berry 도입하여 Docker 이미지 빌드 속도 개선
- 프로젝트 외주사, 해외 API 제공팀 등과 소통하며 요청사항 대응
프로젝트
블록체인 트랜잭션 대행 및 자동화 기능, Mudskipper
메셔(Mesher Inc.)
2024.01. ~ 2024.04.
프로젝트 설명
블록체인 트랜잭션 최적 길찾기 B2B 제품인, 이전 PathFinder 프로젝트의 확장 기능입니다.
사용자가 수행하고자 하는 여러 블록체인 트랜잭션을, 백엔드에서 대행 및 자동화하여, 사용자의 거래 실행 횟수를 줄여주는 편의 기능을 제공합니다.
주요 업무 내용
- 기존 단일 HTTP API 서버 (PathFinder)를, Nest.js 모노레포 기반으로 여러 서버로 분리하는 리팩토링
- 블록체인 트랜잭션 자동 실행 관련 비즈니스 로직 작성
문제 해결
- Yarn Berry 도입하여 전체 서버의 Docker 이미지 빌드 시간 2분 내외로 단축
- 개별 서버 간 요청을 전송하는 기존 구조에서, 서버 간 요청을 보내지 않는 구조로 변경하여 서버 간 의존성 최소화
- 개별 서버는 일정한 주기로 DB에서 상태값만을 참조하여 CronJob을 수행
- @Cache, @Retryable 데코레이터 활용하여 외부 API 에러 발생률 개선
블록체인 트랜잭션 최적 길찾기 B2B 솔루션, PathFinder
메셔(Mesher Inc.)
2023.09. ~ 2023.12.
프로젝트 설명
사용자가 보유하고 있는 자산을, 원하는 자산으로 교환하기 위한 최적 블록체인 트랜잭션을 순차적으로 제공하는 B2B 목적 프로젝트입니다.
주요 업무 내용
- Github Actions 및 self-hosted runner 활용한 CI/CD 프로세스 관리 및 운영
- 인스턴스에 네트워크 패킷 out이 없을 때 Slack으로 알림 보내는 시스템 구성 (AWS Chatbot, AWS SNS)
- AWS Cloudwatch, Docker 활용한 로깅 시스템 구성
- 블록체인 트랜잭션 생성 관련 비즈니스 로직 작성
- 외주 업체 측의 QA 대응
문제 해결
- Nest.js EventEmitter로 Slack 알림 전송과 비즈니스 로직 분리
- Jest Custom Matcher 활용하여 유닛 테스트 코드 중복 개선
- 사내 패키지 로직 수정하여, 12자리 이상의 수 및 소수점 이하 18자리의 수의 Floor 정확성 개선
인물 사진 AI 변환 모바일 앱, Jippi AI 사진사
AboveTech(어보브테크)
2023.09. ~ 2023.11.
프로젝트 설명
사용자의 인물 사진을 AI 기반 필터로 변환하여, 다시 사용자에게 제공하는 모바일 앱입니다.
주요 업무 내용
- 앱 내 재화의 소비/충전 기능 관련 모듈 작성
- 주요 비즈니스 로직 테스트 코드 작성 (Jest)
- AWS S3 활용하여 변환 예정 이미지 관리 (S3 pre-signed URL)
문제 해결
- testcontainers 라이브러리 활용하여 테스트 코드 작성시 DB와의 interaction 모킹 최소화
- 이미지를 pre-signed url로 제공하여, Private 버킷으로 이미지 관리
2022 버미 & 수리 NFT 프로젝트
고려대학교 블록체인학회 <블록체인밸리>
2022.10. ~ 2022.11.
프로젝트 내용
- 고려대 X 연세대 정기전 기념 NFT 프로젝트입니다.
- 정기전 기간 이틀 동안 3,000명 이상의 사용자 수를 기록하며, 학교별로 1,500개로 기획된 NFT 수량을 모두 발행하였습니다.
담당한 역할
- 프로젝트의 백엔드 API 서버 개발
- 서버 배포 및 프로젝트 진행 기간 동안 운영
Tech Stack
- Backend : Typescript, Nest.js
- Infrastructure : AWS, pm2
- DB : MySQL, TypeORM
고려대학교 수강신청알리미 2기
고려대학교 수강신청알리미 팀
2021.09. ~ 2022.07.
프로젝트 내용
- 고려대학교 학생들의 수강신청을 보다 편하게 하기 위한 웹서비스입니다.
- 관심 등록한 강의에 대한 빈자리 알림, 수강신청/수강희망등록 과거 데이터 제공 등 수강신청 관련 기능을 제공하였습니다.
- 2022년 1학기에 조회 수 711,146회, 2022학년도 2학기에 조회 수 626,978회를 기록하였습니다.
담당한 역할
- 수강신청/수강희망등록 강의 검색 기능, 학수번호 및 교수명 등을 통한 상세 검색 기능 구현
- 수강신청 강의 즐겨찾기 등록 기능 및, 빈자리 알림 설정/해제 기능 작성
Tech Stack
- Backend : Python, DRF(Django REST Framework)
- Infrastructure : AWS, Docker
- DB : PostgreSQL
포트폴리오
교육
고려대학교
대학교(학사) | 사회학과, LB&C(Language, Brain And Computer) 융합전공
2016.03. ~ 2023.08. | 졸업
대외활동
고려대학교 멋쟁이사자처럼 10기 운영진
NEXT X LIKELION (고려대학교 멋쟁이사자처럼)
활동 설명
세션 커리큘럼 구성 및 세션 진행 등에 참여하며, 전반적인 학회 운영에 참여하였습니다.
2학기 활동 기간에는 학술팀장으로 활동하며, DRF를 다루는 백엔드 세션 진행 및 운영을 담당하였습니다.
활동 내용
- 세션 커리큘럼 구성
- Django 및 DRF(Django REST Framework) 관련 세션 진행
- 세션 진행 중 학회원들의 문제 해결 도움
고려대학교 멋쟁이사자처럼 9기
NEXT X LIKELION (고려대학교 멋쟁이사자처럼)
활동 설명
활동 기간 동안 웹 개발에 필요한 다양한 스택을 학습하고, 팀별 프로젝트를 진행했습니다.
활동 내용
- git, github 등 협업 도구 학습
- HTML, CSS, Javascript 및 Django 프레임워크 학습
- DRF(Django REST Framework) 활용하여 팀별 프로젝트 참여