HomeResumePortfolio BlogContact
PORTFOLIO · BACKEND ENGINEER

문제를 정의하고,
정합성으로 증명합니다

결제 정합성 · 비동기 이벤트 · 멱등성 — 무음으로 실패하는 지점을 먼저 찾아 막는 백엔드 신입입니다.

박종준 프로필 사진

박종준

BACKEND ENGINEER
3
대표 프로젝트
12+
기술 스택
380+
커밋
68+
테스트
SELECTED WORK

대표 프로젝트

직접 설계하고, 부수고, 다시 세운 백엔드 기록들

JavaSpring BootAmazon SQSOutbox PatternRedis

잇다(itda) — 토큰 미터링 파이프라인

회의 캡처로 조직 기억을 축적하는 그룹웨어. AI 분석 파이프라인의 토큰 사용량을 과금하는 미터링 도메인을 담당했습니다. SQS 중복 전달·강제 재실행에도 이중 과금이 없도록 job_id UNIQUE 멱등키 + Outbox 릴레이로 effectively exactly-once를 보장했습니다.

0건
SQS 중복·재실행 이중 과금
5회 → DLQ
지수 백오프 후 dead-letter 격리
V7.0–7.18
Flyway 전용 버전 레인 (BE 6명)
Backend · PO 겸임 · 2026.07–2026.08 · 원티드 프리온보딩 팀 프로젝트
JavaSpring BootRedis + LuaMySQL

Flown — 결제·환불 정합성

온라인 강의 수강·결제·이용권 서비스. 결제 승인과 이용권 지급 상태가 어긋나는 무음 실패를 발견·수정하고, Redis SETNX + Lua 소유 토큰 분산 락을 PG 승인 이전 단계에 직접 구현해 중복 결제를 차단했습니다.

50스레드
동시 결제 → confirm·markPaid 각 1회
2단 락
Redis 분산락 + DB 비관적 락
결제·주문·이용권·환불 담당 · 2026.04–2026.08 · GitHub ↗
PythonOR-ToolsCP-SATFSRS

Python AI 서버 — 학습 최적화

OR-Tools CP-SAT로 마감·주간 용량·선수관계를 만족하는 주간 학습 배치를 생성하고, FSRS로 복습 주기를 관리하는 Python 서버. Clean Architecture 4계층으로 설계했으며 레포 커밋 1위 기여자입니다.

68개
도메인 유닛 테스트 직접 작성
커밋 1위
Python-Server 레포 기여도
데이터·최적화 도메인 · 2026.04–2026.08 · GitHub ↗
TECH STACK

기술 스택

직접 코드로 다뤄본 기술만 정리했습니다

백엔드 코어

Java · Spring 기반 REST API와 도메인 설계

JavaSpring BootJPAREST APIPython

데이터 & 메시징

정합성·비동기 이벤트 처리의 핵심

MySQLRedisAmazon SQSOutbox PatternFlyway

테스트 & 품질

동시성·회귀를 코드로 고정

JUnit 5CountDownLatchPlaywright동시성 테스트

최적화 & 협업

데이터/최적화 도메인과 협업 도구

OR-ToolsCP-SATGitGitHubIntelliJ IDEA
CAREER

경력 · 프로젝트

부트캠프에서 전담·리드한 백엔드 프로젝트

2026.07 – 2026.08

잇다(itda) · 회의 기억 그룹웨어

FLAGSHIP
원티드 프리온보딩 · 팀 프로젝트 (FE 3 / BE 6) · Backend + PO 겸임

토큰 미터링·인수인계·통합검색·결제/구독 도메인을 헥사고날 아키텍처로 담당. 목킹이 못 잡는 잠재 결함(KST 월 경계 귀속 오차, UNIQUE 위반 시 멱등 no-op 실패)을 셀프 코드리뷰로 선제 발견·수정. usage-based 과금 모델을 PO로 설계.

JavaSpring BootAmazon SQSOutboxRedisFlyway
2026.04 – 2026.08

Flown · 온라인 강의 결제 서비스

원티드 프리온보딩 · 팀 프로젝트 (BE 5) · 결제·주문·이용권·환불 담당

결제 확정 분산 락, 50스레드 동시성 테스트, 환불 2단 락(Redis + DB 비관적 락)을 구현. 트랜잭션 밖으로 PG 호출을 분리해 HikariCP 커넥션 풀 고갈 장애의 재발을 차단. 무음 실패를 metric 알람으로 표면화.

JavaSpring BootJPARedisMySQLJUnit 5
2026.04 – 2026.08

Python AI 서버 · 학습 일정·복습 최적화

Hard-Click · 데이터/최적화 도메인 · 레포 커밋 1위

CP-SAT 제약 최적화(마감·용량·선수관계·목적함수), FSRS 간격 반복 복습, 설명가능 rule-based 이탈위험 스코어를 구현. INFEASIBLE을 조용히 미루지 않고 부족분을 역산해 정직하게 처리.

PythonOR-ToolsCP-SATpy-fsrsClean Architecture
EDUCATION

교육 · 학력

2026.02 – 2026.08

원티드 프리온보딩 백엔드 부트캠프

원티드랩 · 수료

Java·Spring·JPA 기반 REST API·도메인 설계를 학습하고, 비동기 이벤트 처리·동시성 테스트를 팀 프로젝트 2건에 직접 적용하며 보완.

2027.02 졸업예정

을지대학교 빅데이터의료융합학과

학사 · GPA 3.43 / 4.5

대용량 데이터·통계·SQL 전공. 데이터 처리와 정합성에 대한 관심의 출발점.

SIDE

사이드 프로젝트 & 기록

Personal

DeployGuard

Playwright 기반 배포 후 E2E 자동 검증 도구. 배포 성공을 서버 응답이 아니라 실제 핵심 시나리오 동작으로 판정하도록 만든 개인 프로젝트.

PlaywrightNode.jsE2E
github.com/jongjunn/deployguard
Writing

기술 블로그

결제 정합성, 멱등 처리, 트랜잭션 경계, 유니크 제약 등 백엔드 설계 판단을 코드 근거와 함께 기록. 대표글 「과금 이후 권한까지: LMS 결제 정합성을 지키는 백엔드 설계」.

Backend설계 기록14편+
jongjunn.github.io
CONTACT

함께 정합성을 지키실 팀을 찾습니다

문제의 표면보다 데이터와 상태가 어긋나는 지점을 먼저 정의하고, 원인 수정부터 재발 방지까지 연결하는 백엔드 신입입니다. 2027년 2월 졸업 예정.