Codeit 고급 프로젝트 · 팀 6인(부팀장) · 2026.08.26 – 2026.10.16. 고객이 이사 유형과 일정을 입력해 견적을 요청하면, 여러 기사님의 견적을 한 화면에서 비교하고 확정하는 서비스입니다.
핵심 기술 포인트
- 결제: 서버가 기준 금액을 계산해 승인 전에 검증하고, 조건부 갱신과 멱등 키로 이중 결제를 방어 (토스페이먼츠 테스트 키 연동)
- 인증: 클라이언트 훅 가드를 서버 컴포넌트 가드로 전환해 stale 판정과 깜박임 제거
- 보안: 환경변수를 AWS Parameter Store(SecureString/KMS)로 옮기고, 로그인에 Cloudflare Turnstile 적용
- 실시간: SSE 로 알림·채팅 구현, 커밋 후에만 신호 발행
- 성능: Pretendard dynamic subset 으로 폰트 전송량 약 2.9MB → 259KB
- PWA: manifest + 최소 서비스워커로 설치 가능한 웹앱 (랜딩 설치 안내 섹션)
내 역할
- 팀 운영: CodeRabbit 도입과 리뷰 정책 수립, 프론트엔드 폴더 구조·컨벤션 문서 작성, ERD 통합
- 프론트엔드: 라우트 구조·라우팅 가드·디자인 토큰 세팅, 공통 컴포넌트, 견적 요청 페이지, 랜딩 페이지 전체
- 백엔드: 견적서 제시·확정·조회 API, 기사님 견적 관리 API, 견적 상한 검증 로직
링크
🏆 대표 사례
<aside>
💳
결제 승인 시 서버가 기준 금액을 직접 계산해 승인 전에 검증하고, 조건부 갱신과 멱등 키로 이중 결제를 막았습니다. 시크릿 키가 없을 때 가짜 결제가 통과한 사고의 원인과 조치, 남은 한계까지 STAR 형식으로 정리했습니다.
</aside>
결제 승인 API에서 클라이언트 값을 믿지 않기 (금액 위변조·이중 결제 방어와 가짜 결제 통과 사고)
문제 해결 (STAR)