Java/Spring Boot 백엔드 엔지니어링 기반으로 Python/Airflow 대용량 배치 파이프라인, PostgreSQL 청크 파티션 적재, 고동시성 분산 락(Redis Lua Script) 및 장애 복구 자동화 시스템을 구축해 왔습니다.
데이터 생성부터 장애 복구까지 이어지는 전 과정을 구조화하며, 운영 안정성과 데이터 무결성을 시스템으로 보장합니다.
- 현재 직무: 엔셀 백엔드 개발자 (Data/Batch Backend)
- 기술 블로그: so-dak.com
- 대표 서비스: voice-link.co.kr
- 이메일: junho6667@gmail.com
- GitHub: github.com/junho0831
-
대용량 데이터 파이프라인 최적화 (Prism)
- 약 1,973만 건 처리 시간 30.6% 단축 (
4,175초 → 2,896초) - PostgreSQL Range Partition 청크 COPY 스트리밍 및 파이프라인 오버랩(Pipelining) 실행
- DB Commit 후 원본 삭제 순서 고정 및
source_fileUnique Constraint로 중복 적재 및 데이터 유실 원천 차단
- 약 1,973만 건 처리 시간 30.6% 단축 (
-
운영 장애 분석 및 복구 체계화 (SMIP)
- 장애 분석 리드타임 70% 단축 (
40분 → 12분), 동일 오류 재발률 30% 감소 - 공통 예외 처리 계층(Global Exception Handler) 표준화 및 운영 장애 케이스 JUnit5/Mockito 회귀 테스트 코드화
- 장애 분석 리드타임 70% 단축 (
-
CI/CD 배포 자동화 및 무중단 배포 (KMS)
- 릴리스 리드타임 58% 단축 (
1시간 → 25분), 배포 실패율 0% 달성 (5% → 0%) - GitLab CI/CD & Docker 기반 빌드·배포 파이프라인 표준화 및 Nginx Staging 환경 구축
- 릴리스 리드타임 58% 단축 (
-
사내 지식 RAG 맥락 검색 엔진 (SmartQ)
- 질의응답 정확도 80% 향상 (
60% → 80%), 답변 대기 시간 80% 단축 (5분 → 1분) - LangChain 기반 사내 지식 RAG API 구축으로 상담팀 주당 12시간 업무 리소스 절감
- 질의응답 정확도 80% 향상 (
-
정기 배치 데이터 정합성 보장 (SafeCash)
- 월간 데이터 불일치 이슈 0건 달성 (
월 3건 → 0건) - Crontab 배치 자동화 및 수동 DB 수정을 대체하는 운영자 Admin UI/API 재처리 시스템 구축
- 월간 데이터 불일치 이슈 0건 달성 (
백엔드 개발자 | 2025.01 ~ 현재 | Data & Batch Backend
-
Prism - Airflow 대용량 데이터 처리 자동화
- 스택:
PythonAirflowPostgreSQLFTP - 약 1,973만 건 처리 시간 30.6% 단축 (
4,175초 → 2,896초) - PostgreSQL Range Partition 청크 COPY 적재 및 파이프라이닝으로 메모리 점유 안정화
- 업로드 성공 및 DB Commit 이후에만 원본 파일을 삭제하도록 고정하여 장애 시 무유실 재실행 보장
source_fileUnique Constraint와 UPSERT 적재 로직으로 중복 적재 원천 차단- DIE 수율·불량 유형 및 반도체 EUV Root Cause 빈도를 일별 요약 테이블에 멱등(Idempotent) 집계
- 스택:
-
DataForge - Spring 검색 / 인증 / 관리 API
- 스택:
JavaSpring BootPostgreSQLRedisElasticsearchJWT - Elasticsearch 클러스터 장애 시 서비스 중단 없는 무중단 DB Fallback 검색 자동 전환 (동일 응답 포맷 유지)
- Refresh Token 저장·검증·회전·삭제를 Redis TTL 기준으로 단일화하여 세션 정합성 확보
- 운영자가 직접 복구·조회할 수 있는 Admin 재처리 API 구축으로 수동 DB 개입 최소화
- 스택:
-
SMIP - 공통 예외 처리 계층 구축 및 회귀 테스트
- 스택:
JavaSpring BootVue.jsJUnit5Mockito - 공통 예외 처리 계층(Global Exception Handler) 도입으로 표준 오류 응답 포맷 일원화
- 운영 장애 케이스를 JUnit5/Mockito 회귀 테스트로 코드화하여 장애 분석 리드타임 70% 단축 (
40분 → 12분), 동일 오류 재발률 30% 감소
- 스택:
AI개발팀 백엔드 개발자 | 2023.10 ~ 2024.07 | Backend & CI/CD
-
KMS - CI/CD 배포 자동화
- 스택:
JavaSpring BootGitLab CI/CDDockerNginx - GitLab CI/CD와 Docker 기반 빌드·배포 파이프라인 표준화로 릴리스 리드타임 58% 단축 (
1시간 → 25분), 배포 실패율 0% 달성 (5% → 0%) - Nginx Staging 환경 구축으로 배포 전 사전 검증 체계 확립
- 스택:
-
SmartQ - 사내 지식 RAG 검색 API
- 스택:
JavaSpring BootOpenAI APILangChainFastAPI - 키워드 단순 매칭 한계를 해결하기 위해 LangChain 기반 사내 지식 RAG API 구축
- 질의응답 정확도 80% 향상 (
60% → 80%), 답변 대기 시간 80% 단축 (5분 → 1분, 상담팀 주당 12시간 절감)
- 스택:
마이데이터팀 사원 | 2022.08 ~ 2023.10 | Batch & Data
- SafeCash - 정기 배치 및 Admin 재처리 API
- 스택:
JavaSpring BootMyBatisMySQLCrontab - Crontab 기반 정기 배치 자동화 및 실행 이력/로그 추적 시스템 구축
- 개발자 수동 DB 쿼리 수정을 대체하는 운영자 Admin UI/API 재처리 시스템 구축으로 데이터 정합성 이슈 0건 달성 (
월 3건 → 0건)
- 스택:
VoiceLink - 실시간 음성 매칭·통화 서비스 (voice-link.co.kr)
고동시성 분산 락, 이벤트 무결성, 실시간 미디어 인프라를 1인 전담 설계·개발·배포·운영한 프로덕션 프로젝트
- 기술 스택:
JavaSpring BootRedisLua ScriptDB OutboxPub/SubLiveKit SFUDockerNginxWebRTC - 원자적 선점 (Atomic Claim): Redis ZSET 대기열, Presence TTL, Redis Lua Script로 매칭 취소 직후 stale 결과 및 중복 선점 원천 방지
- Cancel Marker 검증: 재매칭 직후 이전 결과가 반환되는 레이스 컨디션 차단 및 stale 결과 즉시 폐기
- 이벤트 무결성: DB Outbox 패턴과
FOR UPDATE SKIP LOCKED적용으로 Redis Pub/Sub 순단 시에도 이벤트 유실 0% 달성 - 세션 직렬화: LiveKit Webhook과
/match/end처리를 DB 비관적 락(PESSIMISTIC_WRITE)으로 직렬화해 유령 세션 충돌 해결 - 인프라 1인 구축: Docker, Nginx 리버스 프록시/stream SNI, SSL 자동 갱신, coturn TURN 포트포워딩 환경 구축
기술 블로그 대표 포스팅 (so-dak.com)
- WebRTC SFU와 STUN/TURN 서버 1인 구축 및 트래픽 분산 최적화기
- Redis Lua Script를 활용한 분산 환경 원자적 티켓팅/매칭 동시성 제어
- DB Outbox 패턴과 FOR UPDATE SKIP LOCKED로 분산 이벤트 유실 0% 달성하기
- 대용량 데이터 스트리밍과 PostgreSQL COPY 파이프라인 튜닝 실무
- 포스코 (POSTECH) AI / Big Data 아카데미 (2019.04 ~ 2019.06) — 최우수조 수상
- 공공빅데이터 교육 (2020.08 ~ 2020.09) — 우수상 수상
- 동명대학교 로봇시스템공학과 (2015.03 ~ 2019.03) — 학점 3.72 / 4.5, 도립진자 제어 시스템 설계 논문
- 대한적십자 헌혈은장 (120회 이상 헌혈)
| 서비스 / 링크 | 설명 | URL |
|---|---|---|
| VoiceLink | 실시간 음성 매칭 서비스 (실서비스 운영) | voice-link.co.kr |
| So-Dak 블로그 | 백엔드 & 인프라 실무 트러블슈팅 기술 블로그 | so-dak.com |
| GitHub | 전체 소스코드 및 활동 저장소 | github.com/junho0831 |


