-
소프트웨어 개발자 면접에서 제출받는 "take-home assignment"의 비효율성과 지원자 시간 낭비 문제를 강조함
- Kagi Search 지원 과정에서 과도하게 광범위하고 모호한 과제 요구사항을 경험함
- 제안한 구체적 실행계획에 대해 매니저의 명확한 피드백 부재 및 비효율적 소통 경험함
-
심혈을 기울여 개발한 프로젝트 제출 후, 명확한 사유 없는 탈락과 기준 변경 등 불합리함을 느꼈음
-
보다 나은 채용 프로세스에 대한 대안(예: 실시간 코드 리뷰)과, 과제형 면접 과도 요구에 대한 문제의식 공유함
서문
-
Take-home assignment란 소프트웨어 개발자 면접에서 지원자에게 문제를 출제하고, 이를 코드로 구현해 제출하게 하는 평가 방식임
- 본 포스트는 평판이 좋은 회사라고 생각했던 Kagi Search에 지원하여 실제로 받은 과제와 경험을 통해, 이 방식의 비합리성과 지원자 시간 낭비 문제를 지적하고자 함
카기 서치에 입사지원
- Kagi Search의 백엔드 개발자 포지션에 이력서를 제출했음
- 해당 역할의 요구사항은 다음과 같음
- 백엔드 시스템 구축 경험
- Go 언어 활용 능력
- 대규모 백엔드 시스템 확장, 유지 경험
- SRE 등 팀원과의 협업 능력
- Docker 등 컨테이너 기술 이해
면접 과제 안내 및 요구사항
- 서류 통과 후 take-home assignment 안내 메일을 받았음
- 과제 주제: "최소한의 터미널 영감 이메일 클라이언트 구현"
- 터미널 또는 웹앱 형태 중 선택
- 기본 이메일 보기/보내기 기능
- 가짜 또는 실제 이메일 백엔드(IMAP/POP 등) 자유 선택
- plaintext 메시지 처리만 필수, rich text 불필요
- 프로젝트 제출: 깃허브 저장소, 배포본 제공, 설치 안내 문서 포함
-
명확한 가이드 부족 및 프로젝트 규모가 상당히 큼
- 평판 때문이라도 과제 수행을 결정하게 됨
매니저와의 커뮤니케이션
-
명확한 과제 범위 및 추가 기능 관련 문의 시, “무엇을 추가할지는 지원자 자유”라는 모호한 답변만 받음
- 과제에 시간과 노력을 투자하기 전, 구체적인 실행계획(Proposl) 을 공유하고 이에 대한 회신을 요청했으나 특별한 피드백 없이 진행
과제 제안 및 계획
-
실행 계획:
- Go 기반 웹앱
- AWS ECS Fargate 통한 배포 및 SSL 적용
- 이메일 발신자 서비스(Postmark) 연동
- 로그인/인증 기능 추가
- 이메일 송수신 및 UI 표시
-
기술 선정 근거:
- 백엔드 역할과 관련된 다양한 기술 활용
- Infra-as-Code 도구 활용 통한 실질적 시스템 구축
- 단순한 API 연동을 넘어 실제 서비스에 가까운 기능 구현
-
주요 구현 요소:
- Pocketbase(backend/DB), TEMPL(템플릿), Pulumi(IaC), Postmark(이메일 서비스)
- 페이징, 로그인 등 구현
- Stretch Goal: 데이터 백업과 복구 등 안정성
-
결론: 미리 사전에 충분한 설명과 근거를 제시했으며, 이에 대한 명확한 검토와 회신을 기대했음
매니저의 회신 및 소통 문제
- 구체적 검토 없이 “흥미로운 제안”이라는 짧은 답변만 받음
- 제안의 적합성이나 개선 요구 등 피드백 전무
-
지원자 입장에서는 시간 투자 및 노력에 대한 존중 부재로 느껴짐
프로젝트 과제 수행
-
주어진 요구와 제안 사항을 모두 구현했고 일주일 풀타임을 투입함
- 프로젝트 데모 영상 및 깃허브 레포지토리, 상세한 문서까지 제출하였음
탈락 통보와 그에 대한 피드백
- 자동화된 탈락 이메일 수신 후, 피드백 요청 시 받은 답변:
- “더 강력한 지원자 제출물이 있었음”, “채용 경쟁이 치열함”
- 문제점
-
단순한 솔루션 선호라면 애초에 안내 가능
-
제안이 부족했다면 그 시점에 피드백 가능
- 탈락 이후에도 공고는 여전히 게재 중, 단순 경쟁 아닌 과도한 시간 소모 요구라고 판단됨
-
프로젝트 제출 후 요구사항 더욱 강화, 제출 솔루션이 기준을 높인 셈
결론 및 문제의식
- 이 같은 방식은 많은 구직자에게 불합리, 실질적 생계 위협까지 동반
-
과도한 무급 과제 요구에 대해 거절하거나 문제를 제기할 필요성 강조
- 프로젝트성 과제를 대체할 실시간 코드 리뷰 등 더 나은 채용 프로세스 가능
- 실제 개발 문제 해결 능력을 비동기/동기 코드 리뷰 등으로 들여다 볼 수 있음
- Leetcode 스타일 문제 풀이와 현업 요구간 괴리 지적
-
구직자 소진과 부당한 평가 문화 개선을 촉구함
더 나은 채용 절차를 위한 제안
- 실시간 코드 리뷰 방식 등 개발자 역량을 더 의미 있게 평가하는 대안 제시
- 타이머 기반 알고리듬 퍼즐 풀기 중심보다는, 실제 역량 및 문제해결능력 중심으로 변화 필요성을 역설함