9월 초 서류 접수 후 약 3개월간의 길고 긴 채용 과정이 끝났다. 채용 과정을 회고해 보았다.

지원



블라인드 채용이므로, 지원은 간단한 인적사항(이름, 생년월일 등)과 지원분야를 입력하면 접수가 완료된다. 프로그래밍/인프라 크게 2분야로만 나눠서 지원하게 된다. 작년에는 카카오 공동체가 같이 공채를 진행했었는데, 올해는 본사만 별도로 진행했다.

1차 코딩테스트

이번에도 문제 수는 7개로 동일했으나, 채점방식에서 차이가 있었다. 각 문제에 배점이 공개되어 있었고, 기존에 있었던 정확성/효율성 테스트케이스가 분리된 문제들이 사라졌다. 각 문제의 배점은 난이도에 따라 최대 10배 이상까지 차이가 났던걸로 기억한다. 따라서 합격자는 맞춘 문제의 점수 총합으로 결정되었을거라 추측한다.
카카오 코딩테스트답게 기본적인 문자열 파싱부터 이진트리, 그리디, dfs, 다익스트라 등 다양한 알고리즘 지식을 요구하는 문제가 출제되었다. 조금 복잡해 보이는 문제라도 구현 전에 시간복잡도를 잘 생각해본다면 완전탐색으로 풀 수 있는 문제도 몇개 있었다. 올해 상반기 이후로 문제풀이 공부를 거의 하지 못해서, 어렵게 느껴진 시험이었고 많은 수의 문제를 풀진 못했지만 배점이 높은 뒤쪽의 문제를 풀어서 합격할 수 있었다.

2차 CS 테스트 & 코딩테스트

2차 테스트는 CS테스트와 코딩테스트 두 부분으로 나뉘어져 있다.

CS 테스트

CS테스트의 경우 객관식문제로 이루어져 있으며, 자료구조/알고리즘, 운영체제, 네트워크, 데이터베이스 분야의 문제가 골고루 출제되었다. 객관식이긴 하지만, 꽤 깊고 지엽적인 부분까지 다루고 모두 골라야 하는 문제도 있어서 체감 난이도는 상당히 높았다. 코딩테스트 점수가 높더라도 CS테스트 점수가 낮아서 불합격한 사람도 있는 것을 보면, CS테스트가 PASS/FAIL 역할을 하는 것 같다. CS가 정리된 Github만 봐서는 합격라인에 들기에 조금 어려울 것 같고, 강의나 책을 통해 평소 CS를 꾸준히 공부하셨다면 무난한 난이도였던 것 같다.

코딩테스트(API)

2차 코딩테스트는 다른 기업에서는 한번도 볼 수 없었던 유형으로, 주어진 웹 API를 사용해 특정 시나리오의 문제해결을 해야하는 문제이다. 시나리오를 한번 완료할 때마다 별도의 페이지에서 자신의 점수와 현재 등수를 확인할 수 있다. 작년에는 전체 등수가 공개되었던 것 같은데, 이번에는 100등까지만 순위를 공개했다. 100위 안에는 들지 못했지만 100위에 조금 못 미치는 점수로 테스트를 마무리 하고, 다행히 합격할 수 있었다.

프로그래머스에 기출문제를 풀어볼 수 있는 환경을 제공하고 있으니, 꼭 풀어보고 가시길 추천한다. 문제 해결에 위한 알고리즘은 당일날 생각해내야 될 수 밖에 없지만, API Endpoint 설계와 풀이를 위한 객체 설계는 경험해볼수록 시험날 좋은 코드를 써낼 수 있을 것 같다. 여기서 작성한 코드를 1차 인터뷰에서 주제로 다루게 되니, 단순히 풀이를 위한 구현보다는 역할과 책임을 잘 분리해서 깔끔한 코드를 만들면 면접관에게 좋은 인상을 남길 수 있다.

자기소개서 및 포트폴리오 제출

2차 코딩테스트를 통과한 후에는, 자기소개서와 포트폴리오 제출을 위한 시간을 준다. 자기소개서에는 입사가능일과, 보유스킬에 대한 간단한 문항들과 일반적으로 다른 기업 자소서에서도 볼 수 있는 자기소개 문항들이 있다. 파일이나 링크로 포트폴리오를 제출 할 수도 있다.

1차 인터뷰

1차 인터뷰에서는 주로 다음의 질문을 받았다. 다른 분들의 경험도 들어보면, 아래 세 분야에 대해 질문이 나오되 비중은 면바면인듯 하다.

  • 2차 코딩테스트
  • CS
  • 제출한 자소서와 포트폴리오

CS 같은 경우는 단편적인 지식을 묻기보다는 창의적으로 생각해서 대답해야 하는 문제가 많았다. 나는 공개대학강의와 도서를 활용해서 공부하고, 내용을 정리해서 반복하여 학습하는 것으로 공부했다. CS를 정리해놓은 깃헙만 보고 공부했다면 답변이 많이 어려울 것 같다고 느껴졌다. 아예 처음 들어보는 지식에 대한 질문도 있었는데, 그냥 쿨하게 모르겠다고 말씀드렸다.


답변을 못한 질문이 있어서 기대를 별로 안했는데, 다행히 합격했다.
1차 인터뷰 합격자를 대상으로, "미리 만나는 카카오"라는 세션을 진행 해 향후 채용 과정과 세부 직무에 대한 설명을 제공한다. 이후 세부지망을 조사하는 별도의 단계가 있다.

2차 인터뷰

2차 인터뷰의 경우, 카카오스러움 + 기술적 인성에 대한 평가가 이루어진다고 안내를 받았다. 그리고 1차 인터뷰어의 의견에 따라 추가적인 기술적 검증이 들어갈 수 있다고 카더라로 들어서 걱정을 많이 했었다.
개발자가 왜 되고싶은지, 그리고 그걸 위한 나의 노력에 대해서 시간순서대로 천천히 돌아보는 성찰을 하였던 것 같다. 나는 비전공자 + 다른 분야에서 일을하다 개발자가 되려고 결심한거라서 이부분은 명확하고 확고한 이유가 있어서 준비하기 상대적으로 수월했다.
우려와는 달리 인성질문 위주로 면접이 진행되었고, 면접관분들이 편하게 잘 대해주셔서 내 생각과 하고싶은 말들을 솔직하게 다 말씀드릴 수 있었던 것 같다. 상상했던 인성질문에서 크게 벗어나지 않는 질문들이 주를 이뤘지만, 가끔 날카롭게 앞뒤가 맞지 않는 부분을 지적하시기 때문에 면접을 위해서 경험이나 생각을 지어내기보다는 솔직하게 임하는게 좋을 것 같다.
면접 경험은 굉장히 좋았으나... 최종면접이니만큼 정말 결과가 나오기 전까지 기다리기 힘들었다.


다행히 좋은 결과를 얻을 수 있었다! 지난 1년간의 노력이 머리에 스쳐지나가며 행복한 하루를 보냈다.