실무 코딩 과제는 정답 코드 한 파일보다 요구사항을 이해하고 다른 사람이 결과를 실행·검토할 수 있는지가 중요합니다. 회사마다 평가 기준이 다르므로 안내문에 없는 기능을 무작정 늘리기보다 명시된 조건을 먼저 충족하세요.
제출 전 7가지 점검
- 요구사항 표: 필수 기능과 선택 기능을 나누고, 각 항목을 어느 코드와 테스트에서 확인할지 연결합니다.
- 실행 가능성: 새 환경에서 설치 명령과 실행 명령을 따라 해봅니다. 환경 변수 예시는 제공하되 비밀값은 포함하지 않습니다.
- 경계 입력: 빈 입력, 중복 요청, 존재하지 않는 항목, 권한 없는 접근에 대한 동작을 정합니다.
- 테스트: 핵심 로직의 정상 사례와 실패 사례를 자동 테스트 또는 재현 절차로 남깁니다.
- 보안: 비밀번호·토큰이 저장소에 들어가지 않았는지 확인하고 사용자 입력을 검증합니다.
- 변경 기록: 작은 기능 단위로 커밋해 구현 과정을 읽을 수 있게 합니다.
- 한계 설명: 미완성 기능과 개선 가능 항목을 숨기지 않고 README에 적습니다.
GitHub의 README 문서는 프로젝트의 목적과 시작 방법을 전달하는 기본 자료를 설명합니다. 협업 과제라면 풀 리퀘스트 안내를 참고해 변경 이유와 검토 포인트를 적어 보세요.
마지막 10분에 할 일
제출 파일을 새 폴더에 내려받아 README의 명령만으로 실행해 보고, 테스트 명령과 결과를 다시 확인합니다. 평가자의 컴퓨터에 내 로컬 파일이나 설정이 없다는 전제로 확인해야 합니다. 알고리즘 시험과 과제형 평가의 차이는 코딩테스트 난이도 비교에서 이어서 확인할 수 있습니다.