미리보기
기본 정보
꾸준한 학습과 체계적인 기록을 통해 지속적으로 성장하고 있습니다. 반복 작업 없이 자동화하는 것과 효율적인 인프라에 관심이 있습니다. 동료들과 개발 경험을 나누며 함께 성장하는 것에 재미를 느낍니다.
경력
주식회사프리딕션(PredictionCorp.)
사원 | 개발
2023.01. ~ 2024.10. (1년 10개월)
총 13개 개발 분야에 걸친 지식과 30건 이상의 주요 업무 경험을 문서화하며 성장 과정을 기록하였습니다. (링크)
큐비(QB)
회원 수 100만, MAU 30만, 전 과목 내신대비 교육 앱
2024.06 - 2024.10
[담당 역할]
협업 과정에서 코드 리뷰를 주도하여 일관된 컨벤션 구축에 기여
신규 영어 컨텐츠(공진단) 기능 개발: 영단어, 구문분석, 영문법을 interactive하게 학습하는 기능
[주요 활동]
Doppler 서비스를 활용한 프로젝트 시크릿 중앙 관리 및 AWS Lambda로 시크릿 변경 알림 자동화
프로젝트 환경 변수를 Slack으로 공유할 때의 보안 리스크와, GitHub Secret으로 관리할 때의 의사 소통 비효율 최소화
Doppler에서 GitHub Secret 동기화하여 시크릿 조회 및 수정 가능 -> 보안 강화
Doppler 웹훅과 Lambda를 사용해 시크릿 변동에 대한 슬랙 알림 자동화 -> 휴먼 에러 방지
Poetry 도입으로 패키지 및 가상환경 관리 경험 개선
자동 관리되는 lock 파일과 이를 기반으로 가상 환경을 동기화하여 협업 안정성 개선
pre-commit 훅에 등록하여 Git 커밋마다 pyproject.toml과 poetry.lock 파일 사이의 일관성 자동 검증
신규 영어 컨텐츠 출시에 따라 기능별 사용 빈도 및 결제 전환 관련 로그 데이터를 활용한 성과 분석을 위해 도입
Redis Stream에 하루 단위 로그 적재 후 MySQL 데이터베이스에 배치 저장
AWS EventBridge Scheduler로 스케줄링 구현
큐비에디터
학습자료 한글 타이핑 및 문제 은행 웹 서비스
2023.11 - 2024.05
[담당 역할]
api 서버 전체 개발
회원관리, 기출 문제은행, 커스텀 시험지, 한글 타이핑, 결제 등 담당
[주요 활동]
3계층 코드 아키텍처 도입과 이에 따른 DB 트랜잭션 관리
QB 태국 프로젝트에서 경험한 단일 계층 코드 아키텍처의 단점을 보완하고자 router, service, repository 계층 분리 -> 코드 재사용성 및 가독성 개선
SQLAlchemy scoped_session 도입 및 @transactional 데코레이터를 제작해 request-local한 DB 트랜잭션 관리 -> 데이터 정합성 개선, 코드 중복 해소
PDF -> HWP 타이핑 신청 시 한번에 여러 파일을 업로드할 수 있도록 기능 확장 (최대 20개, 파일 당 최대 100MB)
I/O 작업 시 멀티스레딩 적용 및 FastAPI 백그라운드에서 S3와 통신하여 응답시간 단축
SSE & Redis 활용 실시간 유저 알림 기능 개발
브라우저 새로고침 없이 실시간으로 서비스 내 상태 변화를 확인할 수 있도록 하기 위해 도입
FastAPI 비동기 라우터로 SSE 엔드포인트를 구현하여 단일 스레드에서 다수의 SSE 연결 동시 처리
비동기 제너레이터를 통해 Redis List 메세지 큐에서 BLPOP을 수행하며 실시간 이벤트 전달
큐비(QB) 태국
태국 중고등 수학, 과학 문제풀이 앱
2023.02 - 2023.10
[담당 역할]
api 서버 & admin 페이지 전체 개발
회원관리, 연습문제풀이, 오답노트, 모의고사, 결제, 데이터 추출 등 담당
[주요 활동]
AWS Lambda 활용 문제별 해설 영상 트랜스코딩 자동화
개발자의 관여 없이 상용 서비스에 노출할 수 있는 영상 제작 가능
원본 영상 업로드, 변환된 영상 목록을 조회 및 삭제할 수 있는 admin 페이지 개발
S3 PUT 트리거가 설정된 Lambda에서 AOS와 IOS를 모두 지원하는 스트리밍용 영상 제작
GitHub Actions 활용 전사 백엔드 개발서버 자동배포 시스템 구축
GitHub Secret과의 연동을 고려하여 프로젝트 환경 변수를 .env 형식으로 관리하도록 수정
EC2에서 GitHub private repo에 대한 Git 작업이 가능하도록 SSH 키 설정
워크플로우 로직: EC2에 SSH 접속 후 git pull을 통해 코드를 갱신하여 Django 앱 autoreload
사내 전파를 통해 백엔드 전체의 배포 안정성에 기여
기술 스택
Python3, Poetry, FastAPI, SQLAlchemy, Alembic
MySQL, Redis, S3, DynamoDB, OpenSearch
Docker, ECS, EC2, Nginx, Lambda, CloudFront
GitHub Actions
프로젝트
Jigumulmi(지구멀미)
개인
2024.03. ~ 2025.03.
'지구멀미'는 채식 정보 공유 서비스로, 지구의 빠른 변화 속도를 늦추기 위해 우리의 식생활부터 변화를 시작하자는 취지에서 개발되었습니다.
팀의 유일한 백엔드 개발자로써 API 서버 및 모니터링 시스템의 인프라 구축과 기능 개발을 담당하고 있습니다. 운영에 필요한 데이터에 접근하고 조작할 수 있는 ADMIN 페이지의 고도화도 함께 진행중입니다.
최소한의 비용으로 AWS 클라우드에서 상용, 개발 환경의 API 서버를 운영 중이며, GitHub Actions를 통한 CI/CD 작업으로 테스트와 배포 자동화가 이루어지고 있습니다.
최근에는 AWS Lambda를 활용한 이미지 WebP 변환 자동화 시스템을 구축하여 서비스 성능 개선에 기여했습니다. (관련 기록)
학습한 지식과 기술에 대해 꾸준하게 기록해나가고 있으며, DB와 ORM을 중심으로 기본을 충실히 다져나가고 있습니다.
소스 코드: GitHub
개발 일지: Notion
기술 스택
Java, Kotlin, Spring Boot, Spring Security, Springdoc,
JPA, QueryDSL
JUnit5, Mockito
FluentBit, Loki, Prometheus, Grafana
MySQL, S3
CloudFront, EC2, Lambda, Docker, GitHub Actions
포트폴리오
교육
연세대학교
대학교(학사) | 나노과학공학과, 경제학과
2017.03. ~ 2022.08. | 졸업
외국어
영어
원어민 수준