다음을 통해 성과가 평가가 된다.
- 분석 능력
- 문제를 푸는 데 도움을 많이 받았나? 최적화를 얼마나 했나? 문제를 푸는 데 시간이 얼마나 소요됐나? 디자인/설계를 할 대에 문제의 체계를 제대로 세우고 다양한 방법에 대한 장단점을 생각해 봤는가?
- 코딩 능력
- 알고리즘을 적절한 코드로 표현할 수 있나? 깔끔하고 잘 구성되어 있나? 가능한 에러에 대해 생각해 봤나? 코드 스타일은 훌륭한가?
- 기술적 지식 및 컴퓨터 과학 기본
- 컴퓨터 과학 및 관련 기술에 대한 기본기가 출중한가?
- 경험
- 과거에 기술적 결정을 해본 적이 있는가? 흥미롭고 도전적인 프로젝트를 해본 적이 있는가? 진취성, 결단성, 그 외 다른 중요한 요소를 내보인 적이 있는가?
- 문화와 얼마나 맞는지 / 의사 소통 능력
- 지원자의 성격과 가치가 회사에 잘 맞는가? 면접관과 의사 소통이 잘 되었는가?
면접의 방식은 왜 이래야 하는가
부정 오류도 괜찮다
회사 입장에서는 쓸 만한 지원자가 몇 명 불합격하더라도 크게 상관하지 않는다. 회사는 그보다 긍정 오류, 즉 면접은 잘 봤지만 실제 업무 능력은 떨어지는 경우를 더 걱정한다.
문제풀이는 꽤 가치 있는 능력이다
머리가 좋은 사람은 좋은 일을 하려는 경향이 있고, 이러한 사람은 회사 입장에서 꽤 가치 있는 인재이다.
기초적인 자료구조와 알고리즘 지식은 유용하다
기초적인 자료구조와 알고리즘 지식이 필요해지면, 그 지식의 가치는 굉장해진다. 또 다른 면접관은 자료구조와 알고리즘이 지원자를 평가하기에 괜찮은 프락시라고 말한다.
화이트보드가 무엇에 집중해야 하는지 알려준다
화이트보드의 좋은 점 중 하나는 큰 그림을 그리는 데 도움을 준다는 것이다. 전체적인 코드 작성이 필요 없고 오직 코드의 핵심에만 신경 쓰면 된다. 실제로 문제를 풀어내는 함수 부분이 중요하다.
그렇다고 이 방법이 모든 회사와 모든 상황을 위한 것은 아니다
모든 면접은 보편적이지 않고 상대적이다. 현실을 받아들이고, 주어진 것에 최선을 다하자.
어떤 문제를 출제하는가
회사마다 면접 문제는 차이가 있다. 어떤 회사는 알고리즘 문제에 초점을 맞추고, 어떤 회사는 지식에 바탕을 둔 질문을 좋아한다. 하지만 주어진 문제 카테고리 안에서는 회사마다 차이가 거의 없다.
모든 것은 상대적이다