파이썬 면접 질문

작성자 Aaron Cao · 업데이트

세 가지 층위를 예상하세요. 가변성, 제너레이터, 데코레이터 같은 언어 메커니즘, GIL 같은 런타임 동작, 그리고 자료구조에 대한 실전 코딩입니다. 대부분의 탈락은 문법 오류가 아니라 '왜'에 대한 설명이 빈약하기 때문에 발생합니다.

계속 반복되는 질문들

200개짜리 파이썬 질문 목록을 처음부터 끝까지 훑는 것은 생산적으로 느껴지지만 면접 결과를 바꾸는 경우는 거의 없습니다. 이 섹션에서는 전화 스크리닝과 기술 면접에서 반복적으로 등장하는 소수의 질문으로 범위를 좁히고, 좋은 답변에 무엇이 담겨야 하는지를 보여줍니다. 소수의 언어 특성이 대부분의 평가 신호를 차지합니다.

  • 가변 기본 인자.def f(x=[])는 호출 사이에 값이 누적될까요? 기본값은 함수가 정의될 때 한 번만 평가되며, 호출마다 다시 평가되지 않습니다.
  • 제너레이터 대 리스트. yield가 리스트를 만드는 것보다 나은 경우는 언제일까요? 시퀀스가 크거나, 도중에 읽기를 멈출 수도 있을 때입니다.
  • 데코레이터. 데코레이터가 실제로 반환하는 것은 무엇이며, 왜 래퍼에 functools.wraps가 필요할까요?
  • GIL. 왜 CPU 바운드 스레드는 CPython에서 확장되지 않으며, 대신 무엇을 사용해야 할까요?
  • 얕은 복사 대 깊은 복사. 중첩된 구조를 슬라이스로 복사하면 무엇이 깨질까요?
  • 동일성 대 동등성. 셸에서 작은 정수에 is를 테스트하면 왜 오해를 부르는 결과가 나오는지에 대한 설명입니다.

합격과 불합격을 가르는 것

두 지원자가 GIL에 대해 똑같이 정확한 정의를 말해도 다음 라운드로 진출하는 사람은 한 명뿐일 수 있습니다. 차이는 보통 두 번째 문장에 있습니다.

한 퍼블릭 클라우드 업체의 L5 백엔드 엔지니어 면접에서, 지원자는 서비스가 부하 상태에서 느려지는 이유를 질문받았습니다. 그는 GIL을 언급한 뒤 이야기를 이어갔습니다. 병목 구간은 JSON 파싱이었기 때문에 스레드는 적절한 도구가 아니었고, 이 단계를 프로세스 풀로 옮기자 처리량이 회복되었다고 설명했습니다. 제약을 짚어낸 것만으로도 부분 점수를 받았고, 그것을 하나의 결정과 연결한 것이 그 라운드를 통과시켰습니다.

답변은 세 박자로 구성하세요. 그 기능이 무엇을 하는지, 왜 존재하는지, 그리고 언제 그것을 피할지입니다. 대부분의 지원자가 건너뛰는 것이 바로 세 번째 박자이며, 이것이 바로 판단력을 드러내는 부분입니다. 코딩, 행동 면접, 시스템 설계 면접에 관한 다른 페이지들은 면접 유형 아래에 모여 있습니다.

암기하지 않고 준비하는 방법

답을 읽는 것과 답을 말하는 것은 서로 다른 기술이며, 면접에서 시험되는 것은 그중 하나뿐입니다. 시계를 두고, 실제 통화에서 쓸 것과 같은 말투로 소리 내어 연습하세요.

  • 반복적으로 나오는 각 질문에 대한 답을 세 문장으로 적은 다음, 보지 않고 말해 보세요.
  • 매일 사용하는 기능 두 가지를 골라 각각에 대한 솔직한 한계를 준비하세요. 자신이 쓰는 도구를 비판할 수 있다는 것은 경험으로 읽힙니다.
  • 파이썬의 동작이 여러분을 놀라게 했고, 그 이유를 알아낸 실제 디버깅 사례 하나를 준비하세요.
  • 실전 코딩 부분은 따로 연습하세요. 딕셔너리, 셋, 키 함수를 이용한 정렬, 문자열 처리가 스크리닝의 상당 부분을 차지합니다.

실전 전에 AI 면접관을 상대로 시간을 재며 연습해 보고 싶다면 모의 면접 페이지를 확인하세요.

실시간 어시스턴트가 도움이 되는 곳과 그렇지 않은 곳

SubcueAI는 macOS와 Windows용 네이티브 데스크톱 앱입니다. 통화 양쪽의 소리를 캡처해 실시간으로 전사하고, 여러분의 기기에만 머무르는 플로팅 오버레이에 구조 힌트를 보여주므로 참가자나 봇으로 회의에 참여하지 않습니다. 파이썬 면접에서 유용한 출력은 완성된 답이 아니라 구조 프롬프트입니다. 구체적인 내용은 여러분 스스로 채워야 합니다. 후속 질문은 방금 설명한 코드에 관한 것이기 때문입니다.

기능보다 정직한 한계가 더 중요합니다. 화면을 공유하면 그 화면에 있는 모든 것이 공유됩니다. 감독형 평가 플랫폼에서 진행되거나 회사가 관리하는 기기에서 진행되는 면접이라면 어시스턴트는 사용 범위 밖입니다. 설정과 권한에 대한 내용은 튜토리얼 페이지에서 다룹니다.

자주 묻는 질문

파이썬 면접에서 아직도 GIL을 묻나요?

네, 보통은 대리 질문으로 쓰입니다. 면접관은 여러분이 CPU 바운드 작업과 I/O 바운드 작업을 구분하고 그에 맞게 스레드, 프로세스, 비동기 중 하나를 선택할 수 있는지 알고 싶어 합니다. 정의만으로는 절반만 답한 것입니다.

파이썬 잡학 지식을 얼마나 외워야 하나요?

생각보다 적습니다. 면접관은 잘 쓰지 않는 문법을 기억하는 것에 거의 보상을 주지 않으며, 설명할 수 있는 동작에 대한 올바른 추론에 보상을 줍니다. 쓰지 않는 기능의 폭보다 실제로 쓰는 기능의 깊이를 우선하세요.

파이썬 면접에 코딩 문제도 포함되나요?

대체로 포함됩니다. 대부분의 스크리닝은 토론형 질문과 딕셔너리, 셋, 정렬, 문자열 처리 같은 작은 실전 문제를 함께 다룹니다. 타이핑하기 전에 접근 방식을 말로 설명하는 것이 기대되며, 침묵은 나쁘게 평가됩니다.

답을 모를 때는 인정해야 하나요?

네, 그런 다음 어떻게 알아낼지를 보여주세요. 어떤 기능을 써본 적이 없다고 말하고 그 동작을 어떻게 확인할지 설명하는 것이, 면접관이 바로 정정할 수 있는 자신만만한 추측보다 더 강한 답변입니다.

파이썬 코딩 면접 중에 AI 어시스턴트를 사용해도 되나요?

이는 전적으로 면접 형식과 여러분이 동의한 규칙에 달려 있습니다. 감독형 플랫폼, 화면 공유, 회사가 관리하는 기기에서는 사용 범위 밖입니다. 스스로 진행하는 연습 라운드에는 그런 제약이 없습니다.

관련 질문

← 더 보기: 면접 유형