안녕하세요, 여행벌입니다.
감사하게도 2022 카카오 신입 공채 (카카오 Programming)에 합격을 했습니다.
전형별로 제가 느낀 후기랑 어떻게 준비했는지 정리해보도록 하겠습니다.
1. 1차 코딩테스트
개인적인 생각으로 카카오는 네카라 회사 중에 가장 알고리즘 능력을 중요시하는 것 같습니다. 1차 코딩 테스트에서 다른 회사에 비해 깊은 알고리즘 문제도 출제합니다. 보통 7문제가 출제되고 4문제에서 커트라인이 형성되는 것 같습니다. 지금까지 공채 기출을 보면 6번, 7번 문제는 알고리즘 경시대회 준비할 때 풀었던 수준으로 굉장히 높은 수준이고, 1번부터 5번까지는 풀만한 수준인 것 같습니다. 5문제는 꼭 푼다는 마인드로 도전하면 좋을 것 같습니다! 가장 좋은 점은 카카오 코테는 채점 결과를 바로바로 확인할 수 있기 때문에 제대로 풀었는지, 놓친 사이드 테케가 있는지 확인할 수 있습니다.
저는 이번에 5.5 솔브를 했고 통과할 수 있었습니다. 작년에 지원했을 때 6솔을 했었는데 이번 문제가 조금 더 어려웠던 것 같습니다. 1차 코딩테스트는 잘 보면 잘 볼수록 뒤에 전형을 진행하는데도 유리하다고 생각합니다. 프로그래머스 사이트에서 카카오 공채 기출들을 모두 풀어볼 수 있으니 꼭꼭! 풀어보시길 추천드립니다.
https://programmers.co.kr/learn/challenges
2. 2차 코딩테스트
2차 코딩 테스트는 우리가 흔히 알고 있는 코딩 테스트와 다른 방식으로 진행됩니다. API 호출을 통해 정보를 받아와야 되고, 그 정보를 기반으로 API 호출을 통해 자신만의 알고리즘을 동작시켜야 됩니다. 따라서, API 호출 및 Json 형태의 데이터를 파싱하는 코드를 미리 작성하는 것이 유리합니다. 미리 작성한 코드를 코테에서 사용할 수 있으므로 꼭 꼭!! 필요한 코드를 작성해두시길 바랍니다.
마찬가지로, 프로그래머스에서 2차 코딩 테스트 기출을 동일한 환경에서 풀어볼 수 있습니다. 저는 카카오 2차 코테를 처음 치러보기 때문에 프로그래머스에서 기출을 3번 정도 풀어보면서 API 호출 및 Json 데이터 파싱하는 코드를 미리 작성했습니다. 1차 코테는 C++로 치렀지만, API 호출 및 Json 데이터 파싱을 위해 2차 코테는 Java로 지원했습니다.
이번 2차 코테는 크게 매칭, 등급 조정하는 2가지 알고리즘을 작성해야 했습니다. 저는 2가지 알고리즘을 가장 단순하게 만든 V1부터 알고리즘을 돌려보며 점수를 모니터링했고, 계속 리팩토링해서 V6까지 만들었습니다. 또, 2차 코테는 실시간으로 랭킹을 확인할 수 있습니다. 다른 상위권 분들이 어느 부분에서 점수를 많이 획득했는지 확인해가며 제 알고리즘을 맞춰서 수정했습니다. 그 결과, 400등대로 2차 코테를 마무리했던 것 같습니다.
!꿀팁!
기술 면접에서 2차 코딩테스트 코드 리뷰를 진행하기 때문에, 코딩 테스트지만 구조화를 잘하시면 좋을 것 같습니다. 저는 MVC 패턴과 유사하게 코드를 구현했고, API 호출을 Controller 패키지에서 처리하고, Json 데이터 파싱은 Model 패키지에서 처리하고, 핵심 알고리즘은 Service 패키지에서 처리하도록 구조화했습니다. 이 부분을 면접에서 굉장히 좋게 평가해주셨고 합격할 수 있었던 포인트 중에 하나이지 않을까 싶습니다.
3. 기술면접
기술면접은 크게 2차 코딩테스트 리뷰, 기초 CS 지식, 이력서 기반 질문으로 나눌 수 있을 것 같습니다. 2분의 면접관님과 1시간 정도 면접을 진행했습니다.
면접 분위기는 카카오답게 정말 좋았습니다. 카카오 면접은 '면접관이 지원자를 심사하는 것이 아니라 지원자가 그동안 쌓아온 역량을 선배 개발자에게 자랑하는 자리'라고 표현할 수 있을 것 같습니다.
코딩테스트 리뷰
면접관님이 2차 코딩테스트 문제를 다시 화면 공유해주시며 기억을 되살려 주십니다. 저는 이미 2차 코테 코드를 한 번 정리하고 면접을 들어갔던 상황이라 바로 2차 코테 코드 리뷰를 진행했습니다. 어떤 아이디어를 가지고 2차 코딩 테스트를 진행했는지 질문을 해주셨고, 최종 점수를 얻기까지 어떤 아이디어로 계속 리팩토링을 해왔는지 설명드렸습니다. V1부터 스코어보드와 비교해가며 리팩토링을 진행한 점을 좋게 봐주셨고, 코드 구조화 부분에서 칭찬을 들을 수 있었습니다.
기초 CS 지식
자세한 내용은 다룰 수 없지만 정말 정말 기초 CS 지식에 대해서 물어보셨습니다. 네이버, 라인 면접과 달리 기본적인 CS 지식을 많이 여쭤보셨습니다. 같이 기술 면접을 준비했던 친구들과 얘기해봐도 모두 기초 CS 지식수준에서 질문을 받았습니다. 대학생(취준생)이 답을 할 수 있는 수준에서 질문을 해주시는 만큼 겁먹지 말고 그동안 공부해 온 운영체제, 네트워크, 데이터베이스, 알고리즘과 자료구조를 다시 한번 정리하면 면접 준비하는데 큰 도움이 될 것 같습니다. 질문이 쉬운 만큼 답을 못하면 감점이 크지 않을까 싶습니다. 저는 운 좋게도 모든 질문에 대해 다 대답할 수 있었습니다.
이력서 기반 질문
이력서에 기재한 프로젝트에 대해 질문을 해주셨습니다. 프로젝트를 진행한 이유, 사용한 기술 스택에 대해서 잘 알고 계시면 될 것 같습니다. 다른 회사들은 분산 처리나 스케일 아웃에 대해서 많이 질문이 들어왔는데 카카오는 취준생 입장에서 경험하기 어려운 부분에 대해서는 질문을 하지 않아 주셔서 면접을 진행하기 편했습니다.
4. 최종면접
최종 면접도 기술 면접과 동일하게 2분의 면접관님과 진행했습니다. 이력서 기반으로 질문을 해주셨고, 카카오 회사와 지원자가 잘 맞는지 판단하는 시간이었던 것 같습니다. 면접은 40분 동안 진행한다고 안내받았지만 저는 20분 정도 진행하고 두 분 모두 더 질문할 부분이 없다고 하셔서 짧게 끝났던 것 같습니다.
면접관님이 저의 Git과 블로그를 모두 직접 보고 오신 점이 인상 깊었고, 어떤 개발자가 되고 싶은지, 어떤 프로젝트를 해왔는지, 카카오에서 어떤 일을 하고 싶은지에 대해서 편한 분위기에서 얘기할 수 있었습니다.
이번 포스팅에서는 2022 카카오 블라인드 공채 후기를 정리해보았습니다.
더 궁금하신 점이나 조언을 구하시고 싶은 분은 댓글에 남겨주시면 답변드리도록 하겠습니다 :))
'Review' 카테고리의 다른 글
2021 하반기 네이버웹툰 신입 공채 면접후기, 합격후기 (9) | 2021.11.25 |
---|