이더리움 환전 플랫폼 백엔드 Admin API 개발 및 배포 (PM: 1 / BE: 2 / FE: 1)
목적/기술 스택
실시간 이더리움 환전 및 관리 시스템 구축 / Python, Django, Pytest
대상/개발 환경
Linux, PostgreSQL, Docker, AWS
기여 및 성과
자동화 테스트 환경 구축 및 회귀 테스트 체계 도입 (참여율 100%, 기여도 70%)
문제: 테스트 프로세스 없이 개발자가 로컬에서 기능을 직접 확인하는 방식으로 검증이 이루어져, 코드 변경에 따른 기존 기능 영향(Side Effect)을 체계적으로 확인하기 어려움.
해결: 프로젝트 최초로 pytest 기반 테스트 환경을 구성하고, DB 연동 테스트부터 시작하여 테스트 피라미드 원칙에 따라 API Endpoint와 Server Layer 비즈니스 로직 테스트를 단계적으로 확대. 필요한 영역에 Mock/Stub을 적용하고 테스트 실행 명령 및 구조를 표준화.
성과: pytest-cov 기준 테스트 커버리지를 52% → 71%까지 향상하고, 개발자가 동일한 기준으로 반복 실행 가능한 회귀 테스트 기반을 구축하여 신규 기능 개발 및 코드 변경 시 검증 안정성을 확보.
가상화폐 채굴 모니터링 시스템 개발
프로젝트 개요
항목
내용
기간
2021.12 ~ 2022.08 (9개월)
업무/프로젝트
가상화폐 채굴 모니터링 시스템 백엔드 API 개발 및 배포 (PM: 1 / BE: 1 / FE: 2)
목적/기술 스택
실시간 GPU 상태 수집 및 모니터링 / Python, Django, Django Channels, Redis
대상/개발 환경
Linux, PostgreSQL, Docker, AWS
기여 및 성과
스크럼 기반 프로젝트 관리 및 릴리즈 프로세스 운영
문제: 신입 개발자 2명, 운영 담당자 1명으로 구성된 소규모 프로젝트에서 업무 진행 상황과 배포 변경 사항을 공유하기 위한 명확한 협업 방식이 필요.
해결: 사수에게 배운 프로젝트 관리 방식을 기반으로 전사 프로젝트 관리 도구인 Wrike를 활용한 Task 관리와 주간 Sprint를 운영. 매일 작업 현황을 공유하는 Daily Meeting을 진행하고, 매주 금요일 배포와 함께 신규 기능, 변경 API, 버그 수정 내역을 정리한 릴리즈 노트를 작성하여 경영진에게 공유.
성과: 개발 진행 상황과 배포 변경 사항을 가시화하고, 개발·운영·경영진 간 커뮤니케이션 체계를 정립하여 프로젝트 운영 효율을 향상.
실시간 WebSocket 데이터 유실 분석 및 처리 구조 개선 (참여율 100%, 기여도 70%)
문제: 운영 환경에서 220~250번대 GPU 장비의 WebSocket 데이터 수집 누락 현상을 확인하고, 장비별 로그 분석을 통해 데이터 유실 구간을 식별.
해결: Django Channels와 Daphne 기반 처리 구조를 분석하고, 단일 Daphne(systemd Service) 1개 → 4개로 확장. EC2 및 ELB 증설 없이 Nginx 로드 밸런싱을 적용하여 WebSocket 연결을 분산 처리.
성과: 220~250번대 장비를 포함한 전체 장비의 데이터 수집 정상화를 확인하고, 인프라 증설 0건으로 실시간 GPU 모니터링 안정성을 확보.
P2P 법인 투자 플랫폼 개발
프로젝트 개요
항목
내용
기간
2021.01 ~ 2021.11 (10개월)
업무/프로젝트
P2P 법인 투자 플랫폼 백엔드 API 개발 (PM: 1 / BE: 3 / FE: 3)
목적/기술 스택
법인 투자 프로세스 및 보고서 생성 자동화 / Python, Django, wkhtmltopdf
대상/개발 환경
Linux, PostgreSQL, Docker
기여 및 성과
P2P 법인 투자 플랫폼 런칭 및 매출 기여
수행: 법인 투자 핵심 금융 로직, 예치금 입출금 관리 및 채권 관리 API 설계·개발 및 서버 배포 주도.
성과: 플랫폼의 안정적인 시장 안착을 이끌며 서비스 개시 이후 누적 매출액 20억 원 달성에 기여.
투자 보고서 이메일 렌더링 호환성 개선 및 운영 프로세스 최적화
문제: 메일 클라이언트(Naver, Gmail, Daum, Nate 등)별 HTML/CSS 렌더링 차이로 운영 담당자가 이메일 양식을 반복 수정하는 비효율 발생.
해결: 클라이언트별 렌더링 차이를 분석하고, 기존 발송 프로세스를 유지하는 방향으로 Inline CSS 기반 이메일 템플릿을 직접 설계·적용.
성과: 이메일 양식 수동 수정 업무를 제거하고, 메일 클라이언트별 일관된 렌더링 환경을 구축하여 발송 운영 효율 향상.
wkhtmltopdf 기반 PDF 생성 보안 취약점 및 리소스 제어 개선 (참여율 60%, 기여도 60%)
문제: 코드 리뷰 과정에서 Jinja2 기반 SSTI 취약 가능성을 발견하고, {{7*7}} 페이로드 테스트를 통해 템플릿 인젝션 가능성을 검증. 또한 대량 보고서 생성 시 서버 리소스 과부하 가능성 확인.
해결: 사용자 입력 Escape 처리로 SSTI를 차단하고, 보고서 본문 길이를 25,000자 이하로 제한하여 과도한 PDF 렌더링 요청을 방지.
성과: 템플릿 인젝션 위험 제거 및 비정상적인 PDF 생성 요청으로 인한 서버 리소스 과부하 가능성을 예방.
기타 업무 및 활동
DDD 기반 설계 문화 확산을 위한 사내 기술 발표
목적: 회사 규모가 12명에서 30명대로 성장하면서 조직 확장에 따른 개발 방법론과 설계 기준에 대한 공통 방향성 필요.
수행 내용: ConWay 법칙을 기반으로 조직 구조와 소프트웨어 구조의 관계를 설명하고, 비즈니스에서 사용하는 언어가 소프트웨어 모델에 반영되어야 한다는 DDD(Domain-Driven Design) 관점을 사내 타운홀 미팅에서 공유.
성과: 기능 정의 및 문서화 과정에서 비즈니스 용어 기반의 커뮤니케이션 중요성을 공유하고, 개발·기획 간 동일한 도메인 이해를 기반으로 논의할 수 있는 방향성을 제시.
투자 분석 지원을 위한 금융 데이터 수집 자동화 및 데이터 파이프라인 구축
목적: 경영진의 투자 전략 개발 및 분석에 필요한 금융 데이터를 안정적으로 확보하고, 반복적인 데이터 수집 과정을 자동화할 수 있는 데이터 파이프라인 구축.
수행 내용:
TradingView 기반 관심종목 약 70개의 현재가 및 과거 OHLC 데이터 수집 스크립트 개발.
Koscom API를 활용하여 KOSPI/KOSDAQ 전체 종목 대상 현재가 및 OHLC 데이터 수집 자동화.
AWS EventBridge + Lambda 기반 배치 환경을 구성하여 금융 데이터 수집 작업을 매일 오전 6시 자동 실행하도록 구축.
수집한 시장 데이터를 JSON 포맷으로 AWS S3에 저장하고 투자 전략 알고리즘의 입력 데이터로 활용 가능한 구조 설계.
Forex.com 기반 주요 외환 통화쌍 약 60개 데이터 수집 과정에서 Selenium 기반 UI 조작 방식의 병목을 분석하고 HTTP Request 방식으로 개선.
성과:
투자 전략 알고리즘 개발에 필요한 금융 데이터 수집 및 저장 파이프라인 구축으로 데이터 확보 과정 자동화.
Selenium 기반 환율 데이터 수집 방식을 HTTP Request 방식으로 개선하여 실행 시간을 약 90초 → 10~15초로 단축(약 83~89% 개선).
AWS 기반 자동 실행 환경 구축을 통해 반복적인 수동 데이터 확보 작업을 제거하고 운영 효율성 향상.
신입 기획자·디자이너 대상 개발 협업 온보딩 교육
목적: 신규 입사자가 개발 조직과 원활하게 협업하고 프로젝트 진행 방식을 이해할 수 있도록 개발 프로세스 및 기술 개념 공유.
수행 내용:
기획 → 디자인 → 개발 → 테스트 → 배포까지의 전체 개발 프로세스와 업무 진행 방식 교육.
요구사항 정의 방식, API 개념, 프론트엔드/백엔드 역할 차이, 개발 Task 분해 및 일정 산정 방식 등 개발 협업에 필요한 기본 개념 공유.
성과: 기획·디자인 조직이 개발 업무 흐름과 기술 제약 사항을 이해할 수 있도록 지원하여, 개발 협업 과정에서 요구사항 정의와 커뮤니케이션 기반 마련.