프로젝트 전체 그림

2026-09-23 기준 · 스프린트 3 진행 중. 처음 보는 분을 위한 한 장이다 — 무엇을 만들고, 지금 어떻게 돌아가고, 영상 한 편이 어떻게 흘러가는지. 구조의 상세는 시스템 설계 1절에, 지나온 길과 처음 설계에서 달라진 것은 진행 현황에 있다.

1) 무엇을 만들고 있나

생활체육 경기 영상을 분석해 선수의 실력을 재고, 그 근거로 팀이 빈 자리에 맞는 용병을 찾게 하는 플랫폼이다. 선수가 영상을 올리면 동작을 재서 등급과 카드가 생기고, 팀은 포지션·시간·지역이 맞는 후보를 추천받아 초대한다. 경기가 끝나면 서로 남긴 평가가 등급 옆에 신뢰로 쌓인다.

1,781
커밋
08-24 저장소 시작부터
4명
기여자
넷 모두 300커밋 이상
35 / 69일
진행
스프린트 3 아흐레째 · 51%
111 / 174
미결 항목 해소
팀 요청·결정의 공통 입구

날마다 새로 센 값은 관리 지표에 있다.

2) 지금 실제로 돌아가는 구성

사용자사용자객체 저장소 — AWS S3 · 원본·리포트 · 담당 정어진객체 저장소AWS S3 · 원본·리포트정어진분석 워커 — GPU · 쓸 때만 켬 · 담당 정상호분석 워커GPU · 쓸 때만 켬정상호웹 — Next.js · Vercel · 담당 백성검웹Next.js · Vercel백성검앱 — Flutter · 실서버 연결 · 담당 백성검앱Flutter · 실서버 연결백성검앞단 — Cloudflare → nginx · 담당 박민호앞단Cloudflare → nginx박민호API 서버 — FastAPI · k3s · 7개 도메인 · 담당 정어진API 서버FastAPI · k3s · 7개 도메인정어진Gemini — 용병 검색 임베딩 · 담당 박민호Gemini용병 검색 임베딩박민호DB — PostgreSQL + pgvector · 담당 정어진DBPostgreSQL + pgvector정어진호출읽기·쓰기임베딩작업 가져가기 · 완료 보고원본·리포트원본 직접 업로드(웹·앱)박민호 · PM백성검 · 프론트·웹정어진 · 백엔드·파이프라인정상호 · AI 에이전트
그림 1. 지금 실제로 돌아가는 구성(2026-09-23). 색은 그 부분을 만든 사람이다. 원본 영상은 웹이든 앱이든 API 서버를 거치지 않고 저장소로 바로 가고, 무거운 분석은 GPU 워커가 따로 가져가 처리한다. 워커도 API를 부를 때 앞단을 지난다 — 09-17의 장애가 바로 이 화살표에서 났다(진행 현황의 전환점 10).
  • 화면은 웹과 앱 둘이다. 기능은 웹에서 먼저 열었고, 앱도 이제 실서버에 붙어 카드·영상·스쿼드·팀을 웹과 같은 API로 쓴다(09-23 병합).
  • API 서버 하나가 모든 화면의 창구다. 안쪽은 사용자·카드·영상 분석·매칭·평가·과금·알림 일곱 도메인으로 나뉘고, 도메인끼리 코드를 끌어다 쓰지 못하게 검사로 막아 두었다.
  • 무거운 분석은 따로 돈다. GPU 워커는 켜져 있을 때만 대기열에서 작업을 가져가므로, API 서버는 분석이 오래 걸려도 멈추지 않는다.

3) 영상 한 편이 추천 판에 오르기까지

올린다 — 웹·앱에서 촬영 영상 · 담당 백성검올린다웹·앱에서 촬영 영상백성검원본은 저장소로 직접등록검사한다 — 길이·용량 규칙 · 담당 정어진검사한다길이·용량 규칙정어진반려돼도 기록은 남김통과줄 세운다 — 분석 작업 대기열 · 담당 정어진줄 세운다분석 작업 대기열정어진같은 영상은 앞 결과 재사용가져감분석한다 — 자세 → 특징 → 채점 · 담당 정상호분석한다자세 → 특징 → 채점정상호GPU · 루브릭 채점리포트적재한다 — 리포트를 DB로 · 담당 정어진적재한다리포트를 DB로정어진봉투 규격을 계약으로 고정조회보여준다 — 카드·등급·추천 판 · 담당 백성검보여준다카드·등급·추천 판백성검남에게는 좁은 칸만백성검 · 프론트·웹정어진 · 백엔드·파이프라인정상호 · AI 에이전트
그림 2. 영상 한 편이 추천 판의 카드가 되기까지. 여섯 단계 중 셋(검사·대기열·적재)이 백엔드이고, 각 단계 아래 줄은 그 자리에서 내린 판단 하나다.

더 보기: 진행 현황 → · 백엔드 · 파이프라인 →

이 페이지의 수치를 다시 뽑는 명령
git rev-list --count HEAD                                   # 커밋 수
git log --format='%an' | sort | uniq -c                     # 기여자별
grep -c '^### ' jekyll/pages/pending.markdown               # 미결 항목 전체
grep -c '^### .*✅' jekyll/pages/pending.markdown           # 그중 해소

git 계정 이름과 사람: pmhllll12·박민호 박민호 · 백성검 백성검 · roqkf 정어진 · jsangho 정상호.

← 목차로