From: HARD CODE

가치 있는 면접 질문

에릭 브레히너는 "왜?" 질문을 반복해서 지원자의 역량이 드러나도록 유도하는 방법을 제안한다.

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

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

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

좋은 질문을 만들기

에릭 브레히너는 실제로 팀이 겪은 문제를 면접 질문으로 활용하는 것을 이야기한다.

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

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

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

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

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

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

면접관 역할 분담

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

From: 일을 버려라!

DHH의 책 "일을 버려라!"를 읽어보면 그의 회사 베이스캠프에서 어떤 방식으로 일하는지를 엿볼 수 있다.

생각해볼만한 점이 있는 글 몇 가지를 인용한다.

팀원이 참고 견뎌야 하는 사람이면 안 된다

먼저 베이스캠프에서는 이력서만으로 채용하지 않는다. 이력서는 쓰레기통으로 들어갈 뿐이다. 우리는 지원자가 어느 학교를 졸업했는지, 그 분야에서 얼마나 오랜 경력을 가졌는지, 전 직장이 어디였는지 관심 없다. 우리가 중요하게 생각하는 것은 지원자가 어떤 사람인가 또 그가 어떤 일을 할 수 있는가이다.

그렇기 때문에 그는 일단 좋은 사람이어야 한다. 팀원들이 함께 일하고 싶은 사람이어야지, 참고 견뎌야 하는 사람이어서는 안 된다. 그가 잘난체나 하는 형편없는 사람이라면 얼마나 일을 잘하는지는 전혀 중요하지 않다. 아무리 일을 잘해도 우리는 그런 태도를 인정하지 않는다.

이것이 전부는 아니다. 우리는 흥미롭고 현재 있는 직원들과 다른 점을 가진 사람을 찾는다. 똑같은 문화적 배경을 가지고 똑같은 후드 티셔츠를 입은 50명의 복제인간을 원하지 않는다. 우리 고객의 다양한 문화를 반영할 수 있는 서로 다른 관습을 가진 팀원들이 함께할 때, 더 좋고 더 광범위하며 더 사려 깊은 서비스를 제공할 수 있다. 현재 우리에게 없는 무엇인가를 당신이 가지고 있다면 그 자체로 한 가지 자격을 갖춘 것이다. 2

  • 이력서에 적힌 내용은 별로 중요하지 않게 생각한다.
    • 이력서는 부풀려지기 마련이다.
  • 좋은 사람이어야 한다.
    • 팀원들이 함께 일하고 싶은 사람이어야 한다.
    • 참고 견뎌야 하는 사람이어서는 안 된다.
  • 현재 있는 직원들과 다른 점을 가진 사람을 찾는다.

일을 실제로 할 수 있는지를 확인한다

베이스캠프에서는 지원자들에게 실제 프로젝트를 주고 그들이 무엇을 할 수 있는지 직접 증명해 보이도록 한다.

예를 들면, 새로운 디자이너를 뽑을 때 우리는 최종 합격자들을 일주일간 채용하고 1,500달러를 지급한다. 그리고 샘플 프로젝트를 제출하도록 요청한다. 그렇게 하면 결과물을 가지고 그것이 시대에 맞는 디자인인지, 실제적인 것인지, 온전히 그들 자신이 작업 한것인지 평가할 수 있다.

우리는 수수께끼처럼 인터뷰 질문을 하지 않는다. 칠판에 문제를 내고 푸는 종류의 테스트도 진행하지 않는다. 즉석에서 어떤 상황에 대해 가상의 대답을 하게 하지도 않는다. 우리는 하루 종일 수수께끼 같은 질문을 하지 않는다. 일을 실제로 할 수 있는지 여부를 확인한다. 그래서 실제로 할 일을 주고 그 일을 하는 데 필요한 적당한 시간을 준다. 그들이 채용되면 실제로 하게 될 그런 일을 준다. 3

From: KODE VICIOUS

서로 융화될 수 있는지

어떤 면접이건 면접의 목표는 면접관과 지원자 양쪽 모두가 조직문화 안에서 서로 융화될 수 있는지 확인하는 데 있습니다. 아무리 훌륭한 프로그래머여도 제가 절대로 채용하지 않는 사람들이 여럿 있습니다. 그들의 인간적 결함이 다른 팀원들에게 미치는 해로운 영향이 코더로서의 능력보다 더 큰 사람들이죠. 질문은 "어떻게 하면 30분에서 60분 안에 이 사람이 우리가 필요로 하는 일을 할 수 있는지, 그리고 하루에 10시간, 일주일에 5일, 그리고 어쩌면 몇 년 동안 제가 그 사람을 참고 견딜 수 있을지 판단할 수 있을까요?"일 것이고, 그걸 알려면 짧은 미팅 내내 물어봐야 할 게 정말 많을 겁니다.

지원자가 해당 직무에 필요한 기술을 갖고 있는지 알아내는 건 사실 면접에서 가장 쉬운 부분일 겁니다. 4

두뇌 테스트에 대하여

어떤 면접관들은 두뇌 테스트(brainteasers)를 주는 걸 좋아합니다만, 저는 현실 세계의 코딩과 관련되지 않는 한 이런 것들이 유용하다 생각하지 않습니다. 두뇌 테스트는 여러 가지 면에서 실패합니다.

(중략)

두뇌 테스트를 별로라고 생각하는 또 다른 이유는 매우 유능한 프로그래머들이 그런 문제에는 쥐약일 수도 있기 때문입니다. 그렇게 되면 당신은 훌륭한 사람을 테스트를 통과하지 못했다는 이유로 놓치게 됩니다. 현실을 직시하세요. 프로그래머들은 코딩하다가 발생하는 문제를 두뇌 테스트랑 연결 지어서 생각하지 않습니다. 그들은 문제를 들여다보고 그것을 코드로 어떻게든 해결하려고 합니다. 당신은 이런 프로그래머를 채용하려는 거지, 오락 퀴즈 방송의 참가자를 뽑는 게 아닙니다. 5

참고문헌

  • HARD CODE / 박재호 역 / 에이콘출판사 / 발행 2009년 06월 30일 / 원제 : I. M. Wright's Hard Code
  • KODE VICIOUS / 조지 V. 네빌-닐 저/황건구 역 / 영진닷컴 / 1판 1쇄 발행: 2022년 08월 26일 / 원제: The Kollected Kode Vicious
  • 일을 버려라! / 제이슨 프라이드, 데이비드 하이네마이어 핸슨 저/우미정 역 / 예문아카이브 / 초판 1쇄 발행 2019년 12월 15일 / 원제: IT DOESN’T HAVE TO BE CRAZY AT WORK

주석

  1. HARD CODE. 9장.  2 3 4

  2. 일을 버려라! 135쪽. 

  3. 일을 버려라! 137쪽. 

  4. KODE VICIOUS. 5장. 332쪽. 

  5. KODE VICIOUS. 5장. 334쪽.