## Issue : ✅ Feature 사용자의 프로필을 조회·수정하고, 온보딩 입력 내용을 임시저장한 뒤 완료할 수 있는 API를 구현합니다. 온보딩을 시작하지 않은 사용자는 UserProfile을 생성하지 않으며, 최초 임시저장 요청 시 프로필을 생성합니다. 직무 성향 퀴즈는 선택 사항으로 건너뛸 수 있습니다. ## ✅ TODO 1. [ ] UserProfile 엔티티의 careerLevel nullable 변경 2. [ ] 온보딩 진행 단계(PROFILE, QUIZ, REVIEW) 필드 및 enum 추가 3. [ ] 관심 직무 최대 3개 및 대표 직무 검증 구현 4. [ ] 희망 지역 1개 저장 및 검증 구현 5. [ ] 선호 조건, 제외 조건, 기술 스택 List 변환 로직 구현 6. [ ] 온보딩 임시저장 API 구현 7. [ ] 온보딩 임시저장 조회 API 구현 8. [ ] 온보딩 완료 API 및 필수값 검증 구현 9. [ ] 프로필 조회 API 구현 10. [ ] 프로필 수정 API 구현 11. [ ] 공통 성공·오류 응답 코드 추가 12. [ ] 서비스 및 컨트롤러 테스트 작성 13. [ ] 전체 Gradle 테스트 통과 확인 ## 📎 ETC - 관련 API - `PUT /api/profile/draft` - `GET /api/profile/draft` - `POST /api/profile/onboarding/complete` - `GET /api/profile` - `PATCH /api/profile` - 모든 API는 Access Token 인증이 필요합니다. - 관심 직무는 1개 이상, 최대 3개까지 선택할 수 있습니다. - 대표 관심 직무는 선택한 관심 직무 목록에 포함되어야 합니다. - 희망 지역은 온보딩 완료 시 정확히 1개가 필요합니다. - 경력 단계는 임시저장 중에는 nullable이며 온보딩 완료 시 필수입니다. - 퀴즈는 선택 사항이며 완료 또는 건너뛰기 후 REVIEW 단계로 이동합니다. - 퀴즈 완료 여부는 기존 `jobTestCompleted` 필드로 구분합니다. - 온보딩을 시작하지 않은 사용자의 임시저장 조회는 `200 OK`, `data: null`을 반환합니다. - 이력서·자소서와 직무 성향 퀴즈 API는 별도 이슈에서 구현합니다.
Issue : ✅ Feature
사용자의 프로필을 조회·수정하고, 온보딩 입력 내용을 임시저장한 뒤 완료할 수 있는 API를 구현합니다.
온보딩을 시작하지 않은 사용자는 UserProfile을 생성하지 않으며, 최초 임시저장 요청 시 프로필을 생성합니다. 직무 성향 퀴즈는 선택 사항으로 건너뛸 수 있습니다.
✅ TODO
📎 ETC
PUT /api/profile/draftGET /api/profile/draftPOST /api/profile/onboarding/completeGET /api/profilePATCH /api/profilejobTestCompleted필드로 구분합니다.200 OK,data: null을 반환합니다.