길다면 길고 짧다고해도 긴 카카오 신입 공채가 끝이 났습니다. 9월에 시작한 전형이 11월 말이 되어서 끝이 났네요!! (중간에 카카오 IDC 화재사건 때문에 1주일이 밀리기도 하고...🔥)
처음에는 저도 코딩테스트 연습을 위해서 지원을 했지만 하나씩 합격을 하다보니 욕심이 생기게 되었습니다. 저의 지원동기나 기분은 별로 궁금해하지 않으실테니 전형별로 제가 어떻게 준비를 했는지와 저의 자랑을 조금씩 섞어서 소개하도록 하겠습니다. 🤫
카카오 공채 코테 문제는 공개가 되었으니 문제에 대한 설명은 각설하겠습니다.
저는 5문제를 풀었고 주변의 얘기를 들어보니 문제별로 다른 배점이 있었던 듯 합니다. (배점이 다르다고 카카오에서 직접적으로 언급하기도 하였습니다.)
커트라인은 3문제였고 1,2,3번을 푼 사람은 떨어졌으나 1,2,5번 문제를 푼 사람은 통과를 하였습니다.
저의 백준티어는 골드 1 입니다. 하지만 하반기 코딩테스트에서 떨어진적은 손에 꼽는 것 같아요.
개인적으로 요즘 코딩테스트를 많이 보면서 느낀점이 점점 구현 위주로 변해간다는 느낌을 많이 받습니다.
힙 자료구조, 트리 자료구조, DP, 비트마스크 같은 문제를 효율적이게 풀 수 있는 아이템들을 익숙하게 만드신다면 그걸 조합해서 문제에 하나씩 대입해서 푸실 수 있을거예
요.
알고리즘에 대해 외우기보단 왜 필요한지에 대해 고민해보셔야 합니다. 결국 코딩테스트는 적절한 방법을 적용할 줄 아는 문제해결 능력을 보려고 하는 것 이기 때문이죠.
그리고 취준생 혹은 학생이라면 코딩테스트는 한번에 준비하기보다 주말마다 한 두 문제라도 푸시면서 감을 놓지 않는게 중요하다고 생각합니다. 😭 (저는 골딱이지만 플래티넘 정도의 목표를 가지시면 좋을 것 같아요!!)
만약 카카오 공채 코딩테스트 합격을 목표로 하고 시험까지 얼마 남지 않았다면 프로그래머스의 카카오 기출문제를 반복해서 풀어보는걸 추천드립니다.
2차 코딩테스트는 다들 아시다싶이 API를 통해 문제를 풀게 됩니다.
이때 알고리즘 원툴 분들이 많이 떨어진다고 하죠! (폄하하는건 절대 아닙니다. 저는 알고리즘 천재들을 존경하거든요)
먼저 웹 경험을 통해 API의 동작방식을 이해하는게 중요해요. 웹 경험없이 2차 코딩테스트를 통과하더라도 아마 면접에서 조금 힘들겁니다.
2차 코테 또한 프로그래머스에 제공이 됩니다!!
지금까지 보셨던 코딩테스트와는 다른 경험을 해보게 될건데 그 환경에 익숙해지는게 중요하고 생각보다 커트라인이 높지 않아요 😊
문제를 이해하고 가장 간단한 방식으로 제출하셔서 기본 점수가 나오게 되어도 통과하실 가능성이 충분하다고 생각 될 정도로요!
제 전략은 다음과 같습니다.
- 먼저 성능을 생각하지 않고 최대한 간단한 방식으로 구현을 해서 첫 번째 점수를 받습니다.
- 그리고 자료구조 혹은 동작방식을 조금씩 효율적이게 바꿔봅니다.
- 안정적인 점수를 확보하고 나머지 시간에는 도전적인 방법으로 성능을 개선해봅니다.
저는 1번을 한 시간정도 걸려서 풀었는데 운이 좋았는지 높은 점수를 받게 되었어요.
처음에 제출을 하니 리더보드 9등을 찍게 되어서 점진적으로 성능을 개선하게 되면 무조건 통과하겠구나 싶었습니다.
하지만 저는 첫 번째 성적을 이기지 못하고 제출하게 되었어요 😭 (이럴줄 알았으면 한 시간만 보고 나갔죠..)
저는 919점을 기록하였고 커트라인은 잘 모르지만 600점대까지도 통과가 되었던 것 같아요!
그러니 제출만 하셔도 충분히 승산이 있다고 조심스럽게 발언해봅니다..
카카오의 면접은 2차 코딩테스트
-> CS 질문
-> 자소서 기반 질문
이라는 틀에서 크게 벗어나지 않습니다.
면접질문이 가장 궁금하시겠지만 그건 카카오의 지식재산이기 때문에 함부로 말씀드리기 어려울 것 같아요.
2차 코딩테스트에 대해서는 직접 푸셨다면 크게 준비할게 없으실거예요. (준비할게 없다고 해서 안보고 가서 설명 못하면 탈락입니다..)
이쪽 질문에서 면접관님들이 보시려는건 이 코드가 네 것이 맞느냐?
입니다.
코드를 이해하기위해 로직 설명을 부탁하시면 아는대로 설명하고, 자연스럽게 개선점까지 말하면 금상첨화겠죠.
카카오의 질문이 정말 악랄하다는 소문을 들었는데 저는 개인적으로 악랄하다고 느끼기보단 정말 기초를 중요하게 본다는 느낌을 받았습니다.
너무 기초라 오히려 더 어려울 수 있다고 생각해요.
면접에서 정말 중요한건 상대방의 입장에서 생각해보는거라고 생각해요. (여기서의 상대방은 면접관님들이겠죠?)
만약 기초적인 내용에 대해 설명하지 못하는 면접자가 온다면 면접관님들의 입장에서 이걸 설명 못한다고?
라는 생각이 들게 되기 때문에 기초적일수록 더더욱 위험해요.
면접마다 다르겠지만 카카오의 1차 면접에서 보고자 하는건 기초가 탄탄한 개발자라면 직접 키워서 쓰겠다.
입니다.
카카오같은 대기업들은 교육과 관련한 온보딩 프로세스가 잘 구축되어있기 때문이죠.
그러니 나는 하나를 공부해도 이렇게 파고들어가면서 공부한다는 느낌을 주면 강점이 될거예요.
기초라는 단어를 너무 언급한 것 같지만 열번 백번 언급해도 모자를 정도로 1차는 그 부분이 중요합니다..
Github의 Repository도 잘 구축되어있기 때문에 면접전에 한 번 훑어보며 설명하는 연습을 해보시고 만약 재미가 없다고 느끼신다면 저와 저희 팀이 개발하고 운영중인 사이트 CS Broker에서 문제풀이 방식으로 준비를 해보세요 😊 (틈새 광고)
2차 코딩테스트 질문과 CS 질문을 잘 통과하셨다면 마지막은 자소서에 기반한 질문이 들어올겁니다.
이 부분에서 느낀점은 거창한 프로젝트를 할 필요가 없다는 것 입니다.
작은 프로젝트를 하더라도 면접관님들은 그 안에서 쓴 도구에 대해서 설명할 수 있어야 하고 왜 사용했는지를 궁금해하십니다.
이 부분은 개발자로써 중요한 부분인 것 같아요. 모든 의사결정에는 이유가 있어야 합니다.
단순히 그냥
혹은 남들이 쓰길래
라는 이유로 프레임워크 혹은 라이브러리를 사용하고 계신다면 위험합니다...
왜냐하면 개발자 생태계는 계속해서 바뀌고 조금 과장해서 말하면 하루에도 수십개의 툴들이 나왔다가 사라져요.
그런 도구들을 내 상황, 프로젝트의 상황에 맞춰서 사용할줄 아는 개발자가 되어야 멀리 갈 수 있다고 생각합니다.
아무튼 자소서에 적은 내용들에 대해서는 완벽하게 설명할 수 있어야 하며 예상질문들을 뽑아보면 그 안에서 나올 확률이 크니까 면접관의 입장이 되어서 어떤걸 궁금해할지를 고민해보시는걸 추천드려요.
저는 생각보다 면접의 난이도가 높지 않았고 모든 질문에 대답할 수 있었습니다.
개인적으로 CS에 대해서 더 대답하고싶어서 드릉드릉 거렸는데 생각보다 깊게 안들어와서 좀 아쉬웠습니다. (CS Broker와 함께라면 여러분도..!!)
아 그리고 모든 면접에서 마지막에는 질문할 시간이 주어지는데 생각보다 이 부분은 중요하지 않습니다.
왜냐하면 이미 질문할때쯤이면 PASS
or FAIL
이 정해지거든요. 그러니 이 부분에 너무 힘 빼지 않으셔도 됩니다!!
대망의 2차 면접이죠. 이때쯤 되면 많이들 멘탈적으로 흔들리는 시기더라구요. 그럴수밖에 없는게 전형이 너무 길기도 하고 이 면접만 뚫으면 나도 카카오 개발자???!!! 라는 생각에 집중하기가 힘드실거예요.
최종까지 왔다면 기술적으로 검증이 되었다는 것 이니 자부심을 가지셔도 좋아요.
2차 면접의 컨셉은 인성면접입니다. 하지만 1차에서 대답하지 못한게 있다면 검증 할 가능성은 존재하니 부족했던 점에 대해서는 보강을 해서 가셔야 합니다. 만약 재질문에서 또 막힌다면 면접관님들은 이 사람은 모르는 내용에 대해 다시 돌아보고 가는 습관이 없구나
라는 생각이 드실 수 있으며 첫 단추부터 잘못 맞춰진다면 모든 단추를 다 풀고 새롭게 맞추어야 하지만 면접에서 새로운 기회란 없습니다.
아무리 좋은 조직이라도 한 마리의 미꾸라지가 팀 전체를 망가트릴 수 있기 때문에 계속 의심하면서 질문하실거예요.
정말 종잡을 수 없는 질문들이 나오기 때문에 2차 면접에 대한 대비가 가장 어려운 것 같아요.
2차 면접에서 면접관님들이 보고자 하는건 협업에 있어서 문제가 없을까?
입니다.
제가 생각하는 문제는 다음과 같습니다.
위에 대한 문제에 대해서 자신을 되돌아보고 내가 다른 사람들이 일하고싶어하는 개발자인가?
라는 고민들을 해보고 아닐수도 있다면 그 부분에 대해 돌아보며 개선해나가는 방법이 가장 좋은 것 같아요.
저는 2차 면접을 깊게 준비하진 않았고 저의 목표가 무엇인지, 회사에서 얻고자 하는게 무엇인지, 평소에는 어떻게 공부를 하는지에 대해서 돌아보는 시간을 가졌어요.
앞에서 기초에 대한 부분을 많이 언급드렸지만 역설적이게도 제대로 된 프로젝트 경험이 중요해요.
여기서 말씀드리는 제대로 된 프로젝트란 하나의 목표를 정하고 그 목표를 위해 나 혼자가 아닌 팀원들과 함께 달려본 경험
입니다.
왜냐면 2차 면접에서 보려는건 위에서 말씀드린 협업능력이기 때문입니다.
그런 프로젝트의 경험이 있다면 프로젝트 안에서의 있을 수 있는 이슈에 대해서 질문을 하실겁니다. 만약 제대로 된 협업을 하셨다면 어렵지 않게 대답하실 수 있을거예요.
2차 면접에서 기억에 남는게 저에게 카카오 말고 다른데도 지원하셨나요?
라는 질문이 들어왔습니다. 저는 여기서 조금 당황을 했지만 솔직하게 네
라고 대답했어요. 그러자 면접관님은 그렇다면..
이라고 포문을 여셨다가 너무 짓궂다고 생각하셨는지 웃으시며 넘어가셨습니다.
이 부분에서 면접관님의 인간적인 면모를 볼 수 있었고 오히려 더 귀엽.. 게 보였습니다 ㅋㅋㅋㅋ
면접관님들이 많이 난처한 질문들을 하는데 그건 여러분을 공격하기 위한게 아닌 성향을 파악하기 위함이므로 너무 당황하거나 상처받지 말고 생각하시는 그대로 말씀드리면 됩니다. 하지만 너무 성급하게 말하기보단 머릿속으로 빠르게 시뮬레이션을 돌려 내 말에 오해의 소지는 없는지에 대해 필터링을 해보고 대답하는게 정말정말 중요합니다!!
1차 면접에서는 궁금한점이 중요하지 않다고 했는데 2차 면접에서는 중요합니다.
그 궁금한점이 그 사람이 가장 중요하게 보는 관점일테니까요.
그렇다고 해서 대단해 보이는 질문을 꾸릴필요는 없고 진짜 내가 중요하게 생각하는게 무엇인지와 면접관님들께 나는 이런걸 중요시 여기는 개발자야!
라는 어필하고싶은 점을 적절히 섞어서 준비해보세요!! (적절히가 제일 어려워..)
저는 최대한 밝은 분위기를 유지하려고 노력했고 운이 좋게도 면접관님이 저와 쿵짝이 잘 맞아서 계속 웃으며 대화하다 면접이 끝난 것 같아요 😄
면접의 마지막에 높은 연차로 보이는 면접관님께서 저에게 커뮤니케이션 능력이 좋고 밝다며 칭찬을 해주셨고 저는 이것이 바로 시그널??!!!🫀🫀 하며 최종 인터뷰를 마무리 하였습니다.
사실 2차 면접을 보고나서 좋은 시그널들을 받았기 때문에 떨어지진 않을 것 같다는 생각을 하고 있었습니다.
하지만 면까몰이기 때문에 100%는 아니고 한 90%정도..?
그렇기 때문에 불안했던 점은 그동안 과정이 너무 순탄하게 진행되었기 때문에 여기서 떨어지면 개선점을 모르겠다
에 대한 불안감이 있었습니다.
그래도 다행히 최종합격이라는 선물을 안겨주셨고 올해로 취준은 끝이라는 안도감에 하루종일 벙실벙실 웃었습니다.
그리고 완전 눈팅충이고 취준동안 흔들리지 않기 위해 삭제했던 인스타를 다시 깔아 인스타 스토리에 자랑도 했습니다!!
옛날 동네 친구들, 바빠서 요즘 보지 못한 대학교 친구들, 또 다양한 곳에서 만난 소중한 인연들까지도 축하를 해주시니 너무 감사하더라구요.
하지만 한편으로는 떨어진 사람도 있을텐데 그런 사람들한테는 상처가 될수도 있겠다는 생각이 들기도 했지만 너무 기뻐서 어쩔수가 없었어요... 미안해요 😭
사실 올해가 순탄한 해는 아니였습니다. 퇴사를 하고 SW 마에스트로에서 새로운 도전을 하며 많은 성장을 할 수 있었지만 크고 작은 가정사도 존재하고 많은 회사에서 탈락 한 경험도 있었습니다.
최대한 멘탈적으로 흔들리지 않으려고 노력을 많이 하였고 탈락에 대한 슬픔보다는 왜 떨어졌을까에 대해 고민하며 조금씩 저의 Selling Point를 업그레이드 시키려 노력하였습니다.
현재 진행하고있는 CS Broker 프로젝트도 최대한 놓지 않으며 멘탈관리, 취준, 프로젝트를 병행하다보니 체력적으로 많이 지쳐있는 상태이기도 해서 12월은 조금 쉬엄쉬엄 가볼까 합니다.
아직 하나의 회사에 대한 전형이 남아있어서 카카오로 들어가게 될지는 잘 모르겠어요. 하지만 최소 카카오라는건 너무 든든하고 지금까지 달려온 저한테 고생했다는 말을 해주는 것 같아서 행복합니다 😊
내년에도 공채가 열릴텐데 제 느낀점들과 생각들이 준비하시는데 도움이 되었으면 좋겠습니다. 👏
멋져요 :eyes: