페어 프로그래밍 면접: 무엇을 예상하고 어떻게 준비할까
작성자 Aaron Cao · 업데이트

페어 프로그래밍 면접에서는 엔지니어와 함께 실제 코드를 작성합니다. 보통 공유 에디터나 본인의 IDE를 화면 공유로 사용하며, 실제와 비슷한 코드베이스에서 작은 기능이나 버그를 다루는 경우가 많습니다. 면접관은 완료 여부뿐 아니라 협업 방식, 커뮤니케이션, 테스트 습관 같은 부분을 평가합니다.
페어 프로그래밍 면접은 코딩 테스트와 무엇이 다를까?
주로 알고리즘 문제로 준비해온 사람에게 페어 프로그래밍 면접은 낯설게 느껴질 수 있습니다. 이 섹션에서는 그 차이와, 그것이 준비 방식을 어떻게 바꾸는지 설명합니다. 간단히 말하면, 당신은 문제를 푸는 사람이 아니라 미래의 팀원으로서 평가받습니다.
면접은 보통 세 가지 방식 중 하나로 진행됩니다. 브라우저 기반의 공유 에디터, 화면을 공유하며 사용하는 본인의 IDE, 또는 이미 진행한 테이크홈 프로젝트의 연장선입니다. 과제는 검증 규칙 추가, 실패하는 테스트 수정, 함수 리팩터링처럼 일상적인 업무와 비슷한 경우가 많습니다. 어떤 회사는 역할을 바꾸어, 세션의 일부는 타이핑을 맡는 드라이버로, 나머지는 방향을 안내하는 내비게이터로 참여하게 합니다.
면접관은 무엇을 평가할까?
- 확인 질문.코드를 작성하기 전에 요구 사항과 '완료'의 기준을 확인하는지.
- 생각을 소리 내어 말하기.상대가 따로 묻지 않아도 당신의 계획을 따라올 수 있는지.
- 점진적인 진행.마지막에 한 번에 큰 변경을 하기보다 작게 동작하는 단계로 나아가는지.
- 테스트.변경 사항이 제대로 동작함을 증명하는 테스트를 작성하거나 실행하는지.
- 코드 읽기.본인이 작성하지 않은 코드에서 얼마나 빨리 방향을 잡는지.
- 피드백 수용.상대의 힌트나 다른 아이디어에 어떻게 반응하는지.
화이트보드, 테이크홈, 라이브 알고리즘 면접 등 다른 코딩 면접 형식은 인터뷰 유형 허브에서 비교할 수 있습니다.
좋은 페어 프로그래밍 세션은 어떤 모습일까?
물류 스타트업의 미드레벨 포지션에 지원한 백엔드 엔지니어가 기존 결제 모듈에 할인 규칙을 추가해 달라는 요청을 받았습니다. 코드를 작성하기 전에 이 지원자는 할인이 중복 적용될 수 있는지, 이미 처리 중인 주문은 어떻게 되는지 먼저 물었습니다. 기존 테스트를 읽고 새 규칙을 위한 실패하는 테스트를 하나 작성한 뒤, 가장 단순한 변경으로 통과시키고 나서, 이 규칙을 가격 계산 클래스에 둘지 별도의 정책 객체에 둘지 상대에게 물었습니다. 면접관이 다른 접근 방식을 제안하자 그것을 시도해 보고 트레이드오프를 설명했습니다. 추가 요구 사항은 끝내지 못했지만, 피드백은 여전히 이 사람과 얼마나 함께 일하기 좋은지에 초점이 맞춰져 있었습니다.
요구 사항을 확인하고, 테스트를 먼저 작성하고, 작은 단위로 변경하며 설계를 논의하는 이 흐름이 바로 대부분의 페어 프로그래밍 면접이 관찰하려는 것입니다.
어떻게 준비해야 하며, SubcueAI는 어디에 도움이 될까?
익숙하지 않은 저장소에서 친구와 함께 작은 과제를 해보며 진행 상황을 말로 설명하는 연습을 하세요. 본인의 IDE를 사용할 예정이라면 미리 환경을 준비해 두세요. 통화가 시작되기 전에 프로젝트가 빌드되고 테스트가 실행되어야 합니다. 모의 면접 도구는 설계 결정이나 이전 프로젝트를 설명하는 것 같은 대화 부분을 연습하는 데 도움이 됩니다.
실시간으로 쓸 수 있는 도구에 대해서는 현실적으로 생각해야 합니다. 페어 프로그래밍은 화면 공유 비중이 크고, 공유하는 모든 것이 상대에게 보이며, 면접관도 실시간으로 당신이 코드를 작성하는 모습을 지켜봅니다. SubcueAI는 화상 면접의 대화 구간에서 면접관의 말을 받아쓰고 답변 포인트를 초안으로 작성하며, 데스크톱 앱이나 브라우저 확장 프로그램에서 작동하고 통화에 봇이 참여하지 않습니다. 코딩 자체는 온전히 본인의 몫이며, 감독형 시험 환경이나 회사가 관리하는 기기는 지원 범위 밖입니다. 설정 방법은 튜토리얼 페이지에서 확인할 수 있습니다.