Ep.5에서 우리는 나열이 아닌 증명으로 가득 찬 진짜 이력서를 완성했다! 이제 여러분은 수백 명의 경쟁자를 제치고 면접이라는 최종 관문에 도달했다
하지만 대부분의 지원자가 바로 이 기술 면접에서 무너진다 J팀장이 완강에 집착했듯 지원자들은 기술면접을 암기 시험이라고 착각한다
면접관이 무엇을 물어보는지에만 집착한다 REST API란? JWT와 OAuth2.0의 차이는? React의 생명 주기는? 그리고 이 질문들에 정답을 말하기 위해 교과서 같은 정의를 달달 외워간다
이것이 탈락의 지름길이다
면접관은 정답이 궁금하지 않다
면접관은 REST API의 정의를 몰라서 당신에게 묻는 것이 아니다 그는 그 정의를 10초 만에 구글링 할 수 있다 그가 이 질문을 하는 진짜 이유는 당신이 학생인지 동료인지 확인하기 위함이다
1. 학생의 대답(탈락)
Q: 프로젝트에서 사용한 REST API에 대해 설명해 보세요
A: 네 REST API는 000의 약자로 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는.....
면접관의 생각 : 아... 이 사람은 그냥 암기했구나 경험이 없구나...
2. 신입의 대답(합격)
Q: 프로젝트에서 사용한 REST API에 대해 설명해 보세요
A: 네 저는 00 프로젝트에서 사용자 정보라는 자원을 관리하기 위해 REST API를 사용했습니다 단순히 기능을 구현하는 것을 넘어 GET/USER/ID처럼 명사 중심의 URL과 HTTP메서드를 명확히 분리하여 설계하려 노력했고 이 과정에서 데이터 조회는 GET을 쓰고 수정은 PUT을 쓰는 이유에 대해 왜 그런지 고민할 수 있었습니다
면접관의 생각 : 오... 이 사람은 정의가 아니라 경험을 말하네 왜 썼는지 아는군!
면접관이 진짜로 듣고 싶은 3가지
면접관은 지식이 아니라 과정을 본다 진짜 이력서에서 증명한 당신의 과정이 진짜인지 목소리로 확인하고 싶을 뿐이다 [Ep.5 참고]
1. 왜?(기술선택의 이유)
면접관은 React를 썼다는 사실이 아니라 왜 React를 선택했는지가 궁금하다
ex) Vue.js도 고려했지만, 초기 로딩 속도와 커뮤니티 규모를 고려할 때 React가 더 합리적이라 판단
이것이 Ep.1의 A정비사(툴 암기)가 아닌, B정비사(본질이해)라는 증거이다
2 어떻게?(문제해결과정)
면접관은 프로젝트를 완성했다는 결과가 아니라, 어떤 에러를 만났고 어떻게 해결했는지가 궁금하다
ex) 로그인 토큰을 관리할 때[기술 블로그]에서 증명했듯 보안 문제를 만났습니다. 이 문제를 해결하기 위해 이런 방식을 적용했습니다
이것이 Ep.3의 능동적 학습을 증명하는 것이다
3. 그래서(배운 점과 통찰)
면접관은 당신이 무엇을 배웠는지 묻는다
ex) 매일의 코드 리뷰라는 프로세스를 통해 혼자 코딩하는 것과 함께 코딩하는 것의 차이를 배웠습니다
이것이 학생이 아닌 동료라는 최종 증거이다
기술면접은 암기 시험이 아니다 당신이 Ep.4의 진짜 프로젝트를 왜 어떻게 해결했는지 그 고민의 흔적을 동료에게 설명하는 대화의 자리이다
정의를 외우는 것을 멈추고 당신의 이력서와 기술블로그에 적힌 당신의 경험을 당신의 목소리로 설명할 준비를 해야 한다
다음 글에서는 이 최종 관문을 통과하는 당신이 마주할 <Ep.7 신입이 첫 3개월간 절대 하지 말아야 할 실수>에 대해서 이야기하겠다