From: HARD CODE

가치 있는 면접 질문

수년에 걸친 면접관 경험 끝에 나는 가치 있는 면접 질문이란 두 종류 뿐이라고 결론을 내렸다.

  • 개인적인 역량을 드러내는 질문
  • 업무를 수행할 능력이 있음을 보여주는 질문

퀴즈나 퍼즐은 쓸모가 없다. 학력이나 가정 환경 조사는 따분하다. "이런 업무를 어떻게 처리하시겠습니까?" 같은 질문은 정신적인 구토에 불과하다. 이런 질문은 개인적인 역량을 드러내지도 못하고 업무 능력을 보여주지도 않는다. 가장 멋진 다음 질문 "왜?"를 던지지 않는다면 말이다. 개인적인 역량이나 업무 능력이 드러날 때까지 한두 번이 아니라 계속해서 "왜?"라고 묻는다. 1

좋은 질문을 만들기

  1. 과거 18개월 동안에 팀이 부딪힌 실전 문제 중에서 두세 개를 고른다. 답이 화이트보드 한 면에 들어가면서 변수는 최소한 세 개가 필요한 문제라면 좋겠다. 즉, 답이 단순하면서도 다소 까다로운 문제가 적합하다. 일반적으로, 간단한 함수, 작은 설계안, 구체적인 테스트 케이스 등을 고른다.
  2. 각 문제에서 핵심 개념을 뽑아서 첫 질문으로 던진다. 지원자가 자신감을 얻으면 난이도를 조금씩 높인다. 예를 들어, 답을 좀 더 최적화 하거나, 다른 테스트 케이스를 구상하거나, '양산 품질' 면에서 좀 더 우수한 답을 생각해 보라고 요청한다.
  3. 지원자가 내놓은 분석에서 불분명한 부분을 지적한다. 계속 질문을 던져서 지원자가 자신이 잘 모르는 문제에 대응하는 방식을 살핀다.
  4. 답 하나만을 고집하지 않으며, 실전 문제에서 핵심 개념을 뽑아서 활용한다.

이삼년 전 문제는 버려라. 새로운 문제는 항상 생겨나므로 옛날 문제는 밀어내라. 그러면 면접관 입장에서 면접이 더 즐거워진다. 지원자 입장에서는 실제로 중요한 문제를 경험한다. 게다가 지원자가 인터넷에서 면접 질문을 찾기도 훨씬 더 어려워진다. 1

지원자가 문제에 접근하고 해결하는 방식을 관찰한다

프로그래밍 문제를 던지는 이유는 올바른 답안을 구하기 위해서가 아니다. 지원자가 문제에 접근하고 해결하는 방식을 관찰하기 위해서다. 똑똑한 지원자라도 짧은 시간 내에 문제를 해결하지 못하는 경우가 흔하다. 정답에 집착하지 말고, 지원자가 문제를 푸는 동안에 드러나는 역량을 살핀다. 예를 들면, 다음과 같은 측면을 관찰한다.

  • 자신이 수립한 전략에 문제가 있을 경우 이를 인식하는가?
  • 문제를 해결하는 과정에서 면접관에게 질문을 던지는가? 면접관이 제시하는 힌트에 귀를 기울이는가?
  • 과정과 결과를 분석하는가?
  • 다양한 전략을 적용하는가?

지원자가 화이트보드에 답을 쓰는 동안에는 정신을 바짝 차린다. 정답이 목적이 아니다. 정답을 구해가는 과정이 중요하다. 1

면접관 역할 분담

다음으로 각 면접관이 관심있게 살펴볼 역량을 정해준다. 즉, 중복되지 않으면서 분명한 임무를 각 면접관에게 부여한다. 오후 면접관이 오전에 제기된 문제를 거론할 여지는 남겨두되, 각 면접관이 맡을 역할은 분명히 정한다. 1

참고문헌

  • HARD CODE / 박재호 역 / 에이콘출판사 / 발행 2009년 06월 30일 / 원제 : I. M. Wright's Hard Code

주석

  1. HARD CODE. 9장.  2 3 4