티켓 고르는 기준

## 수습용 티켓의 4가지 조건

- 1
  망가뜨려도 복구 쉬운 것. 롤백 가능하고, 스테이징에서 검증 가능하고, 결제·인증·개인정보 같은 민감 영역이 아닐 것.
- 2
  범위가 한 문장으로 설명되는 것. "이 화면의 이 부분을 이렇게" — 파일 3~4개 이내로 끝나는 크기. 아키텍처를 이해해야만 하는 건 아직 아님.
- 3
  완료 조건(DoD)을 명확히 쓸 수 있는 것. "되면 이렇게 보인다/동작한다"를 미리 적을 수 없으면 수습용이 아님.
- 4
  실제로 가치 있는 것. 연습용 가짜 일이 아니라, 머지되면 정말 제품이 나아지는 일. (이게 동기부여의 핵심이에요)

주지 말 것: 운영 DB 마이그레이션 · 인증/권한 로직 · 결제 · 배포 설정 · 고객사 SLA가 걸린 긴급 건 · "리팩터링 알아서" 같은 범위 무한 티켓.

🖥️

## 프론트엔드 (React) — 7개

화면에서 보이는 것부터. 결과가 눈에 보여서 첫 실전에 가장 좋아요.
FE-01

### 빈 상태(Empty State) 화면 추가

★0.5~1일
무엇을데이터가 없을 때 휑하게 비는 목록/테이블에 "아직 항목이 없어요 + 안내 문구/버튼"을 보여주기.
찾는 법각 화면에서 데이터 0건으로 조회해 보기. `.map()` 돌리는 목록 중 length가 0일 때 분기가 없는 곳이 후보.
완료 조건0건일 때 지정된 문구·아이콘 노출, 1건 이상이면 기존과 동일, 스크린샷 첨부된 PR.
멘토 준비대상 화면 지정, 문구 확정(디자이너 수습생과 협업시키면 좋음).
FE-02

### 로딩 표시(스피너/스켈레톤) 추가

★0.5~1일
무엇을API 응답을 기다리는 동안 아무것도 안 보이는 화면에 로딩 상태 표시 넣기.
찾는 법네트워크를 느리게(개발자도구 throttling) 하고 화면 이동 — 흰 화면이나 깜빡임이 보이는 곳이 후보.
완료 조건로딩 중 표시 노출, 로드 완료 시 자연스럽게 교체, 에러 시 로딩이 무한히 남지 않음.
멘토 준비기존 공용 로딩 컴포넌트가 있으면 알려주기(새로 만들지 재사용할지).
FE-03

### 폼 입력 유효성 검사 보강

★1일
무엇을빈 값·형식 오류를 제출 후에야 알려주는 폼에, 입력 시점 안내 메시지 추가(예: 이메일 형식, 필수값).
찾는 법각 폼에 일부러 빈 값/이상한 값 넣고 제출해 보기 — 서버 에러로만 알게 되는 폼이 후보.
완료 조건정의된 규칙별 에러 문구 노출, 통과 시 정상 제출, 에러 문구는 한국어로 친절하게.
멘토 준비검사 규칙 목록 확정(무엇을 필수로, 어떤 형식으로).
FE-04

### 목록 정렬/필터 옵션 추가

★★2일
무엇을있는 목록 화면에 정렬(최신순/이름순) 또는 필터(상태별) 드롭다운 1개 추가.
찾는 법운영/관리 화면 중 항목이 20개 이상 쌓이는 목록에서 사용자가 스크롤로만 찾는 곳.
완료 조건옵션 변경 시 목록 갱신, 새로고침해도 기본값 정상, 기존 기능 회귀 없음.
멘토 준비정렬/필터 기준 확정, 서버 쿼리 지원 여부 확인(클라이언트 정렬로 충분한지).
FE-05

### 에러 화면/토스트 메시지 개선

★0.5~1일
무엇을"Error" 또는 영문 원문이 그대로 뜨는 실패 메시지를, 사용자가 이해할 한국어 안내로 교체.
찾는 법서버 꺼두고/네트워크 끊고 주요 동작 실행 — 알 수 없는 문구가 뜨는 곳 수집.
완료 조건실패 상황별 지정 문구 노출, 콘솔 에러는 유지(디버깅용), 문구 목록 문서화.
멘토 준비상황별 문구 톤 가이드 한 줄(사과·원인·해결 순).
FE-06

### 모바일 화면 깨짐 수정

★★1~2일
무엇을좁은 화면에서 넘치거나 겹치는 요소(테이블·버튼 줄바꿈 등) 1~2군데 반응형 수정.
찾는 법개발자도구 모바일 뷰(375px)로 주요 화면 전부 훑기 — 가로 스크롤 생기는 곳이 후보.
완료 조건375px·768px·데스크톱 3구간 스크린샷 첨부, 기존 데스크톱 레이아웃 변화 없음.
멘토 준비깨지는 화면 목록 미리 수집(학생이 찾는 것부터 시키면 반나절 추가).
FE-07

### 공통 컴포넌트로 중복 UI 정리

★★2~3일
무엇을거의 똑같은 버튼/카드/모달이 여러 파일에 복붙돼 있는 것을 컴포넌트 1개로 추출해 교체.
찾는 법비슷한 JSX 덩어리를 검색(클래스명·문구로 grep) — 3곳 이상 반복되는 블록이 후보.
완료 조건추출한 컴포넌트 1개 + 기존 사용처 전부 교체, 화면 픽셀 변화 없음(전후 스크린샷).
멘토 준비대상 지정 필수(범위 폭주 방지). props 설계는 착수 계획서에서 함께 리뷰.
⚙️

## 백엔드 (Spring Boot) — 6개

서버 쪽 안전 지대. 응답·검증·로그처럼 되돌리기 쉬운 것 위주.
BE-01

### API 응답에 필드 1개 추가

★1일
무엇을화면에서 필요해진 값(예: 등록일, 개수, 상태명)을 기존 조회 API 응답에 추가하고 프론트 반영까지.
찾는 법프론트에서 두 번 요청해서 조합하거나, 하드코딩으로 때운 값이 있는 화면의 API가 후보.
완료 조건응답 DTO에 필드 추가, 기존 호출부 회귀 없음, 화면에 값 표시, API 문서/주석 갱신.
멘토 준비추가할 필드와 출처(어느 테이블/계산) 지정.
BE-02

### 요청 검증(Validation) 보강

★1일
무엇을이상한 값(음수, 빈 문자열, 초과 길이)이 들어와도 500으로 터지는 API에 검증 어노테이션과 400 응답 추가.
찾는 법등록/수정 API에 일부러 이상한 값 보내 보기 — 500이 뜨는 곳이 후보.
완료 조건정의된 규칙 위반 시 400 + 명확한 메시지, 정상 값은 기존대로, 테스트 1개 추가.
멘토 준비검증 규칙 표(필드·규칙·에러 메시지) 초안.
BE-03

### 에러 로그 메시지 개선

★0.5~1일
무엇을"error occurred" 수준의 로그에 무엇이/어떤 값으로/왜 실패했는지 문맥 추가 (단, 개인정보는 제외).
찾는 법최근 장애/문의 때 로그 보고도 원인을 몰랐던 지점을 선임에게 물어 수집.
완료 조건지정 지점 로그에 식별자·원인 포함, 개인정보(전화번호 등) 마스킹 확인.
멘토 준비개인정보 로깅 금지 규칙 브리핑(이 티켓이 보안 교육 기회).
BE-04

### 조회 API 신규 작성 (단순 CRUD의 R)

★★2~3일
무엇을기존 테이블에서 조건으로 조회하는 GET API 1개를 컨트롤러→서비스→리포지토리 계층대로 신규 작성.
찾는 법관리/통계 화면에서 "이 목록도 보고 싶다"고 미뤄둔 요구가 후보 (신규 화면과 세트로 주면 FE 수습생과 협업 티켓이 됨).
완료 조건API 동작(페이징 포함 여부 명시), 계층 구조 준수, 테스트 1개, API 명세 공유.
멘토 준비대상 테이블·조건·응답 형태 스펙 한 장. 참고할 기존 유사 API 지정.
BE-05

### 매직 넘버/하드코딩 값 설정으로 추출

★1일
무엇을코드에 박힌 숫자·문자열(페이지 크기, 제한 횟수, 안내 문구)을 상수/설정 파일로 추출.
찾는 법서비스 코드에서 의미를 알 수 없는 숫자 리터럴 grep — 선임이 "이건 바뀔 수 있는 값"이라고 확인해준 것만.
완료 조건동작 변화 없음(값 동일), 상수 이름이 의미를 설명, 어디서 왜 쓰는지 주석.
멘토 준비추출 대상 목록 지정(전체 수색은 범위 폭주).
BE-06

### 느린 조회 1건 개선 (N+1 / 불필요 조회 제거)

★★2~3일
무엇을목록 조회 시 항목마다 추가 쿼리가 나가는 지점 1개를 한 번에 가져오도록 개선.
찾는 법쿼리 로그 켜고 목록 화면 열기 — 같은 모양 쿼리가 수십 번 반복되는 곳이 후보.
완료 조건쿼리 수 전/후 비교 기록(예: 51→2), 결과 데이터 동일함 검증, 개선 설명 PR에 작성.
멘토 준비대상 지점 확정 필수. JPA 페치 전략을 함께 리뷰(혼자 두면 위험한 티켓).
🧪

## 품질 · 테스트 · 문서 — 4개

티가 덜 나지만 팀이 정말 고마워하는 일. 코드 이해 훈련으로도 최고예요.
QA-01

### 버그 재현 → 수정 → 회귀 테스트

★★2~3일
무엇을알려진 경미한 버그 1개를 재현 절차 문서화 → 원인 찾아 수정 → 재발 방지 테스트 추가.
찾는 법이슈 트래커/메모에 쌓인 "급하지 않은 버그" 목록에서 데이터 파손 위험 없는 것.
완료 조건재현 절차 문서, 수정 PR, 실패했다가 통과하는 테스트 1개.
멘토 준비버그 후보 2~3개 골라두기(1개는 막힐 경우의 교체용).
QA-02

### 핵심 함수에 단위 테스트 추가

★1~2일
무엇을테스트가 없는 계산/변환 함수(금액 포맷, 날짜 계산, 상태 판정 등)에 정상·경계·예외 케이스 테스트 작성.
찾는 법if 분기가 3개 이상인데 테스트 0개인 함수를 서비스 코드에서 찾기.
완료 조건케이스 5개 이상(경계값 포함), 전부 통과, 테스트 이름만 봐도 뭘 검증하는지 알 것.
멘토 준비대상 함수 지정 + 기존 테스트 파일 1개를 본보기로 알려주기.
QA-03

### README / 로컬 실행 가이드 현행화

★1일
무엇을본인이 1주차에 환경 세팅하며 막혔던 지점을 살려, 실행 가이드를 "처음 온 사람도 따라 하면 되는" 상태로 갱신.
찾는 법본인의 1주차 세팅 메모가 그대로 재료. (이 티켓은 사실상 준비돼 있음)
완료 조건문서만 보고 다른 수습생이 클린 세팅 성공(상호 검증), 시크릿 값은 문서에 안 씀.
멘토 준비문서 위치 지정, 시크릿 기재 금지 재강조.
QA-04

### 미사용 코드/주석 정리 (지정 범위)

★0.5~1일
무엇을멘토가 지정한 폴더 안에서 주석 처리된 죽은 코드, 안 쓰는 import, 미사용 함수 제거.
찾는 법에디터/린트의 unused 경고 + 주석 블록 검색. 삭제 전 "정말 안 쓰나" 확인 방법을 배우는 게 포인트.
완료 조건빌드·테스트 통과, 삭제 목록을 PR 설명에 정리, 확신 없는 건 삭제 대신 질문.
멘토 준비범위 폴더 지정(전체 수색 금지), 리뷰 꼼꼼히.
🎨

## 디자이너 티켓 — 3개

디자인 수습생용. 개발 수습생의 FE 티켓과 짝지으면 협업 훈련이 됩니다.
DZ-01

### 빈 상태·에러 상태 디자인 세트

★1~2일
무엇을FE-01·FE-05와 짝: 빈 상태/에러 상태의 일러스트·문구·레이아웃을 디자인하고 개발자에게 핸드오프.
완료 조건시안 + 문구 + 간격/색 명세, 개발 구현 결과가 시안과 일치하는지 확인까지.
멘토 준비기존 디자인 톤 참고 자료 전달.
DZ-02

### 화면 1개 UX 개선 제안 → 반영

★★2~3일
무엇을2주차 UI 인벤토리에서 찾은 불편 지점 1개를 개선 시안으로 만들고, 팀 리뷰 통과분을 개발 티켓으로 넘기기.
완료 조건현행 문제 정의 → 개선 시안(2안) → 선택안 핸드오프 문서 → 구현 확인.
멘토 준비개선 후보 화면 2~3개 승인해 두기(고객사 승인 필요 화면 제외).
DZ-03

### UI 컴포넌트 정리표 (미니 디자인 시스템)

★★2~3일
무엇을서비스에서 쓰이는 버튼·입력·카드·색·글자 크기를 한 장으로 정리한 "컴포넌트 정리표" 제작 — FE-07(공통 컴포넌트화)의 근거 자료가 됨.
완료 조건컴포넌트별 변형 수 집계, 통일 제안 포함, 팀 공유 발표 10분.
멘토 준비범위(화면 몇 개까지) 지정.
구체화 양식

## 티켓 작성 양식 — 이 틀로 실제 티켓을 만드세요

위 패턴에서 찾은 실제 건을 이 양식으로 옮기면 수습생에게 바로 줄 수 있는 티켓이 됩니다. 이슈 트래커에 그대로 복붙해도 돼요.

수습 티켓 양식 (복사해서 사용)

    [제목] (패턴ID) 화면/기능 — 한 줄 요약
           예: (FE-01) 알림 목록 — 빈 상태 화면 추가

    [배경] 왜 필요한가 (1~2문장)
    [할 일] 무엇을 어떻게 (구체적으로)
    [범위] 건드릴 파일/영역 · 건드리지 말 것
    [완료 조건]
      - [ ] 조건 1 (눈으로 확인 가능하게)
      - [ ] 조건 2
      - [ ] PR에 전/후 스크린샷 또는 테스트
    [참고] 비슷한 기존 코드 위치, 참고 문서
    [난이도/예상] ★ or ★★ / 예상 소요
    [멘토] 담당 멘토 이름

배정 트래커

## 티켓 풀 현황판

D-7까지 각 패턴을 실제 건으로 구체화하고, 5~6주차에 배정하면서 채워 나가세요. 학생 1명당 5~6주 동안 2~4건이 적당해요.

패턴 | 실제 티켓 제목 | 구체화 | 배정 대상 | 배정일 | 상태
--- | --- | --- | --- | --- | ---
FE-01 |  | ☐ |  |  |
FE-02 |  | ☐ |  |  |
FE-03 |  | ☐ |  |  |
FE-04 |  | ☐ |  |  |
FE-05 |  | ☐ |  |  |
FE-06 |  | ☐ |  |  |
FE-07 |  | ☐ |  |  |
BE-01 |  | ☐ |  |  |
BE-02 |  | ☐ |  |  |
BE-03 |  | ☐ |  |  |
BE-04 |  | ☐ |  |  |
BE-05 |  | ☐ |  |  |
BE-06 |  | ☐ |  |  |
QA-01 |  | ☐ |  |  |
QA-02 |  | ☐ |  |  |
QA-03 |  | ☐ |  |  |
QA-04 |  | ☐ |  |  |
DZ-01 |  | ☐ |  |  |
DZ-02 |  | ☐ |  |  |
DZ-03 |  | ☐ |  |  |

배정 팁 — 첫 티켓(5주차)은 ★로 시작해 성공 경험을 만들고, 6주차에 ★★로 올리세요. FE-01+DZ-01, FE-07+DZ-03, BE-04+FE(신규 화면)처럼 짝 티켓으로 주면 협업 평가 재료가 생깁니다. 고객사 코드 반영이 어려운 경우, 사내 도구·내부 프로젝트에서 같은 패턴을 찾아도 좋아요.