요약
- 특별한 상황에서의 면접
- 경력자
- 테스터 혹은 SDET
- 명시적으로 테스트를 요구하지 않는다고 하더라도 “어떻게 테스트할까” 고민해봐야 함
- PM
- 개발 책임자, 관리자
- 스타트업
- 면접관의 입장
- 여기에 있는 문제를 그대로 사용하지 말라
- 중간 이상의 어려운 문제를 출제하라
- 겁을 주는 문제는 피하라
- 지원자를 긍정적으로 대하라
- 행동 질문을 철저히 하라
- 지원자에게 조언하라
- 그들이 생각할 시간을 원한다면 생각할 시간을 주라
- 방식을 정하라 : 새너티 테스트, 수준, 전문가, 프락시
메모
3. 특별한 상황에서의 면접
경력자
- 어떤 회사가 신입 지원자에게 알고리즘을 물어 본다면 그 회사는 경력자에게도 알고리즘 문제를 물어 볼 가능성이 큼.
- 시스템 디자인은 경력 수준에 비추어 매겨짐.
- “가장 고치기 힘든 버그는 무엇이었나요?” 같은 질문이 주어졌을 때, 깊이 있고 인상적인 대답을 내놓길 기대함.
테스터 혹은 SDET
- SDET(Software Design Engineers int Test)는 실제 제품이 아닌 테스트를 위한 코드를 작성함.
- 코딩과 테스트 둘 다 잘해야 함.
- 준비를 두 배로 해야 함.
- 테스트에 관련된 핵심적 질문들에 대비하라.
- 코딩 관련 질문에 대비하라.
- 코딩 결과를 테스트하는 훈련을 하라.
- 명시적으로 테스트를 요구하지 않는다고 하더라도 “어떻게 테스트할까” 고민해보길 바란다.
바람직한 경력을 위한 조언
- SDET 에서 개발직으로 전환을 염두에 두고 있다면 코딩과 알고리즘 설계 능력을 높은 수준으로 가다듬어야 함.
- 입사 후 1~2년 내에 직무 전환을 해야 함.
- 코딩 기술은 항상 갈고 닦아라.
PM
- PM(프로그램 관리자 : Program manager)와 제품 관리자 (Product Manager)의 역할은 회사마다 다름.
- ex) 마이크로소프트에서 PM은 마케팅 전선에서 고객과 마주하는 일을 함.
- 하지만 어떤 PM은코딩에 관계된 일을 주로 함.
- 모호성에 잘 대응하는가를 봄
- 자신이 처한 상황을 자신있게 공략해 나가는 것을 보고 싶어 함.
- 새로운 정보를 찾고 무엇이 중요한지 우선순위를 매기고, 문제를 구조적으로 풀어나가는 과정을 보고싶어 함.
- 고객체 초점을 맞추는가를 봄(태도)
- 면접관은 지원자가 고객 중심적인 태도를 갖고 있는지 보고자 함.
- 고객이 누구인지(who), 그들이 제품을 어떻게(how) 사용하고 있는지 이해하기 위해 많은 질문을 던지길 바란다.
- 고객에 초점을 맞추는가(기술적 능력)
- 복잡한 제품을 취급하는 팀의 PM은 반드시 제품을 충분히 이해해야 한다고 생각함.
- 일하면서 그런 지식을 얻기 힘들 기 때문.
- ex) 안드로이드, 윈도우 폰팀에서 일하면 휴대폰에 대한 기술적 이해가 필요함.
- ex) Windows 보안 팀에서 일하면 보안에 대한 이해가 필요함.
- 다층적 의사소통(multi-level communication)
- PM은 같은 회사에서 일하는 서로 다른 직위와 기술적 능력을 갖는 모든 계층의 직원과 의사소통할 수 있어야 함.
- ex) TCP/IP 를 당신 할머니에게 설명한다면?
- 이전에 수행한 프로젝트를 토론하면서 소통 능력을 평가하기도 함.
- 기술에 대한 열정
- 회사는 자신의 일을 열정적으로 즐길 수 있는 사람인지 확인하고 싶어 함.
- ex) “왜 마이크로소프트에 관심이 있습니까?”
- 또는, 과거에 수행했던 프로젝트오 함께 일한 팀이 직면했던 도전들을 얼마나 열띤 어조로 이야기하는지 보고싶어 함.
- 팀워크/리더십
- 가장 중요한 덕목중 하나임.
- 갈등을 잘 봉합하고 주도적으로 일하는지, 사람들을 잘 이해하는지, 같이 일하고픈 사람인지 알고 싶어 함.
개발 책임자와 관리자
- 코딩을 잘 해야 함.
- 개발자와 마찬가지로 코딩과 알고리즘에 능통해야 함.
- 팀워크/리더십
- 관리자 역할을 맡은 사람도 리더십이 있고 팀워크가 좋아야 함.
- 우선순위
- 어떻게 프로젝트에 우선순위를 매기고, 덜 중요한 부분을 어떻게 쳐내는지 판단할 것임.
- 소통
- 다양한 수준의 사람들과 소통할 수 있는지, 친근하면서 따뜻하게 할 수 있는지 살핌.
- 주어진 일을 완수한다.
스타트업
지원 절차
- 구인 리스트를 공개함
- 스타트업은 추천을 받는 것이 가장 좋은 방법임.
비자와 취업 승인
- 대다수 소규모 스타트업은 취업 비자를 제공하지 못함.
- 비자를 받아 스타트업에서 일하려면 전문 구인 리크루터 를 찾거나 규모가 큰 스타트업을 찾아야 함.
이력서 선정에 영향을 주는 요소
- 코딩에 능숙할 뿐 아니라 사업가적 자질이 요구되는 환경에서도 능력을 발휘할 수 있는 사람을 원하는 경향이 있음.
- 실전에 투입될 수 있는 자질도 굉장히 중요함.
면접 과정
- 지원자의 인성, 기술, 과거 경력을 자세히 들여다보는 경향이 있음.
- 친근하면서 호감 가는 톤으로 대화를 진행하는 것은 아주 중요함.
- 경력일 경우, 사용했던 기술에 대한 세부사항을 확실히 훑어두어야 함.
기업 인수 및 인재 영입
면접관의 입장
여기에 있는 문제를 그대로 사용하지 말라
- 회사마다 선호하는 문제가 있음.
- 지원자가 이책을 읽기에 이미 풀어본 문제를 출제할 이유가 없음.
중간 이상의 어려운 문제를 출제하라
여러가지 난관을 거쳐야 하는 문제를 찾으라
- 갖가지 난관, 통찰력, 최적화를 함께 물어볼 수 있는 문제가 좋다.
알기 어려운 지식이 아닌 풀기 어려운 문제를 출제하라
- 자료구조와 알고리즘 → 지원자는 big-O 표기법, 트리에 대한 개념은 익숙함.
- but, 다익스트라 알고리즘 AVL → 잘 기억하지 못함.
- 기술에 대한 요구조건을 완화시켜 적절한 균형을 지켜야 함.
겁을 주는 문제는 피하라
- 수학, 확률
- 로우 레벨 지식(메모리 할당)
- 시스템 디자인, 확장성
지원자를 긍정적으로 대하라
- 지원자는 긍정 혹은 부정적으로 들리는 말에 흔들릴 수 있음.
- 지원자가 면접 경험, 면접관에 대한, 혹은 그들의 성과에 대해 좋은 느낌을 간직하길 원함
- 지원자가 편안한 느낌을 받길 원함.
- 지원자에게 따듯하고 친근하게 대하길 바람.
행동 질문을 철저히 하라
- 지원자는 도전적인 상황 속에서 과거 팀이 직면했던 힘든 상황에 대한 이야기를 한다.
- 하지만, 지원자가 실제로 한 일은 많지 않을 것이라고 생각할 것임.
- 지원자가 과거에 무엇을 했는지 이해가 어렵다고 해서 중요한 일을 하지 않은 것이 아님.
- 현재 상황에 대해 설명하고 팀에서 역할이 무엇이었는지 정확히 말해달라고 요구하라.
- 지원자가 했던 일이 대단치 않다고 느껴지면 더 깊게 캐물어라.
지원자에게 조언하라
- 알고리즘 문제를 풀 때 지원자를 위해 조언을 하자.
- ex) 지원자가 면접 문제를 풀 때 예제를 사용하지 않는데, 예제를 사용해보라고 조언하자.
- 디버깅 보다는 코드를 개괄 분석한 뒤, 작은 예제를 사용해보는 것이 더 효율적임.
- 지원자가 최적 해법을 찾기 전에 코딩을 하려고 한다면, 알고리즘에 먼저 집중하라고 알려줘라.
- 지원자가 긴장해서 아무것도 못하고 있다면 프루트 포스를 먼저 생각해보고 최적화할 부분을 찾으라고 조언하자.
그들이 생각할 시간을 원한다면 생각할 시간을 주라
방식을 정하라 : 새너티 테스트, 수준, 전문가, 프락시
- 아주 높은 레벨에서 면접 질문에 4가지 방식이 있음.
- 새너티 테스트
- 문제풀이 능력에 대한 최소한의 정도를 평가함.
- 수준 테스트
- 문제풀이와 디자인 분야에 좀 더 도전적인 질문과 관련된 것들임.
- 전문가 문제
- 자바, 기계 학습과 관련된 특정 분야의 전문지식과 관련된 문제들임.
- 프락시 지식
- 전문가 레벨이 아닌, 지원자의 현재 레벨에서 알고 있을법한 지식에 관한 것들임.
댓글