원문: Pragmatic Programmers Newsletter (Translated by Google Gemini)


제인은 12번째 면접에 나타난다. 면접관은 그녀에게 마커를 건네고 화이트보드를 가리킨다. “연결되고 가중치가 있으며 무방향 그래프의 최소 신장 트리의 가중치를 계산하는 코드를 작성해 보세요.” 제인은 한숨을 쉬었다. 이달 들어 벌써 세 번째였다. 그녀는 작업을 시작했다.

내 생각에, 그녀는 아무리 답변 연습을 했더라도 그 직업을 가져서는 안 된다.

나에게 좋은 지원자라면 펜을 내려놓고 이렇게 물었을 것이다. “이것에 대한 맥락을 알려주시겠어요? 왜냐하면 프로그래머가 이런 종류의 문제를 처리하기 위해 AI(또는 라이브러리)를 사용하기를 원하실 테니까요. 저는 귀사의 AI가 할 수 없는 일을 할 수 있게 해주는 직업을 찾고 있었습니다.”

챌린지 기반 코딩 면접은 항상 나쁜 아이디어였다. 이는 잠재적 고용인의 가장 중요하지 않은 기술인 기억력에 초점을 맞추기 때문이다. 챌린지 면접에서 테스트하지 않는 더 중요한 기술 중 일부를 나열해 보자.

  • 정중하고 생산적인 방식으로 권위에 의문을 제기하는 능력을 포함한 의사소통 기술;
  • 맥락 구축 기술: 맹목적으로 코딩하기 전에 문제를 더 큰 맥락에서 구성하는 것;
  • 문제 해결에 사용할 수 있는 다양한 접근 방식과 그에 따른 장단점에 대한 지식;
  • 팀워크 능력;
  • 기타 등등

면접 뒤집기#

일부 미국 중등 학교는 뒤집힌 교육과정을 운영한다. 교실에서 배우고 집에서 숙제로 연습하는 대신, 학생들에게 집에서 자료를 공부하고 질문을 가지고 와서 수업 시간에 도움을 받아 예시를 시도하도록 요구한다.

이는 채용 면접에 훌륭한 모델처럼 들린다. 지원자에게 직무의 처음 6개월 동안 마주할 가능성이 있는 실제 문제를 보낸다. 팀원이 일반적으로 작업을 받는 방식으로 표현한다. 해결책을 원하지 않는다고 말한다. 대신, 그들이 면접에 오면 당신과 두어 명의 팀원들과 함께 방에 앉을 것이다. 그들의 과제는 문제를 해결하기 시작할 수 있을 만큼의 이해에 도달하게 할 질문을 하는 것이다. 그들이 만족하면, 그것을 구현할 계획이 무엇인지 묻는다. 작은 단계와 피드백을 통합하고 있는지 확인한다. 마지막으로, 코딩 시작 후 2주가 지났을 때 요구사항 X가 Y로 변경되었다고 말한다. 이것이 어떤 영향을 미칠까? 더 숙련된 지원자의 경우, 요구사항 변경이 명백히 나쁜 아이디어라는 것을 명확히 하고 그들이 반대하는지 확인한다.

기술이 아닌 사람을 고용하라#

오늘날, 기본적인 코딩 기술은 더 많은 AI 토큰을 구매함으로써 채용될 수 있다. 당신은 그것을 기반으로 고용해서는 안 된다.

그러나 AI는 (현재) 사람이 가진 더 높은 수준의, 더 전반적인 기술을 가지고 있지 않다. AI는 Joe가 이전에 수요일에는 토피카로 배달을 예약해서는 안 된다고 언급했던 것을 기억할 가능성이 적다.

당신은 사람을 고용하는 것이다. 과정이 지원자를 적절하게 평가하는지 확인하라.