코딩 인터뷰 파트 소개
코딩 인터뷰 주요 목적
-
지원자가 선택한 프로그래밍 언어를 얼마나 잘 사용하는가?
-
업무에 필요한 학습 능력 및 적응력을 갖추고 있는가?
-
문제 분석 및 해결 능력을 가지고 있는가?
-
논리적으로 생각하고 그것을 코드로 옮길 수 있는가?
-
협업에 필요한 의사소통 능력을 갖추고 있는가?
코딩 테스트는 문제를 푸는 과정 전반을 보는 것이다. 지원자가 문제가 주어졌을 때 문제를 바로 푸는 것은 안좋은 신호이다. 문제를 먼저 정의하고 제약사항이 없는지 먼제 확인하는 절차를 거쳐야 한다.
-
타당한 절차를 거치는지.
-
실제 업무를 주어질 때도, 바로 코딩을 하는 것이 아니라, 문맥 및 상황 그리고 제약조건은 없는지를 고려 해야 한다.
-
코딩테스트 하나의 작은 업무라고 생각을 하면서 접근해야한다.
-
면접관과 지원자가 코딩 테스트 문제를 같이 푼다고 생각을 하고 또한 회사일을 한다고 생각하고 협업을 하고 있다고 생각을 하면서 풀어야한다.
-
면접관이 힌트를 주었을 때는 반응을 해야한다. 내가 풀고 있는 문제와 어떠한 연관이 있는지..
-
만약 면접관의 힌트를 무시한다면 안좋은 신호이다, 문제를 풀도고 떨어질 수 있다. 협업이라는 자세가 중요한데, 피드백을 받지 않는 것은 협업을 할 때 좋지 않은 자세이다.
코딩 인터뷰 프레임워크
문제를 푸는 것 만이 목적이 아니라, 문제를 동료와 같이 해결하는 과정이 중요하다.
-
다만, 여기서 문제를 풀어나가는 주체가 “지원자”.
-
“면접관"을 동료로 생각하고 같이 문제를 풀어나가야 한다.
문제 풀이 프레임워크
-
문제를 명확히 이해했는지 확인한다.
-
가정하고 있거나, 가정할 수 있는 것들을 확인한다.
-
실제 예를 들어가며 다시 확인한다. (나중에 테스트 케이스로 활용할 수 있다.)
-
문제 해결책을 고민한다.
-
해결책을 설명하고 해당 시간과 공간 알고리즘 복잡도를 설명한다.
-
코드를 작성한다.
-
앞서 예시로 사용했던 입력값을 케이스로 삼아 코드를 테스트한다.
참고 문헌
>> Home