2024 카카오 채용 연계형 겨울 인턴십 지원 후기
서버 직군으로 지원했다. 정규직 전환 시 2024년 9월 이내 입사가 가능해야 합니다. 라는 조건이 달려있어 사실 난 지원이 불가능했지만 그래도 경험 쌓을 겸 + 혹시 모르니까 지원했다.
Table of Contents
자소서
지금까지 진행했던 프로젝트 여러개를 다 쓸지, 아니면 하나를 자세히 쓸지 고민하다 하나를 자세히 쓰는 방향으로 갔다.
프로젝트 수행이력
프로젝트에 대한 소개와 본인이 수행한 역할을 상세히 작성해주세요 (1500자 이내)
개발한 기능들, 왜 그렇게 구현했는지, 어떤 문제가 발생했는지, 어떻게 해결했는지
자기소개
- [필수] 졸업(예정) 시기를 기재해 주세요. (ex. YYYY년 MM월)
- 본 포지션으로 지원을 결정하시게 된 계기와, 희망 포지션에 대한 본인만의 경쟁력(직무 관련 프로젝트, 교육, 경험 등을 토대로)을 자유롭게 작성해 주세요.
- 자신의 열정과 전문성을 나타낼 수 있는 프로젝트(경험/이력/과제 등)를 소개해 주시고, 해당 프로젝트의 수행 과정 및 결과에 대해 기재해 주세요.
- 프로젝트를 시작하게 된 계기, 수행 과정에서 마주한 고민과 어려움, 이를 극복했던 과정과 결과, 다수가 함께했던 프로젝트라면 기여도, 이 과정을 통해 느낀 점을 구체적으로 기재해 주세요.
- 자신이 다뤄본 경험이 있는 플랫폼이나 프로그래밍 언어에 대해 1~4 단계로 표현해주세요. 4단계가 가장 높은 단계입니다.
2번 항목에는 백엔드 어쩌다 관심 가지게 되었는지랑 PS 좀 깔짝인거, 3번 항목에는 위에 프로젝트 수행이력 2500글자에 걸려서 다 쓰지 못했던 내용을 썼다. 4번 항목은 노드랑 자바 2? 3? 정도 썼다.
코딩테스트
결론부터 말하면 김승일 인생 커리어 하이 코딩테스트였다.5문제 중 4문제를 완벽하게 풀었다. 카카오 코딩테스트는 문제를 풀면 정답인지 아닌지 알 수 있다.
1번
간단한 구현 문제이다. map
같은거 쓰면 쉽게 풀 수 있다.
2번
그래프의 성질을 물어보는 문제이다. 각 그래프들을 연결하는 중심 노드가 존재하고, 그 노드와 연결된 각각의 그래프들이 어떤 타입의 그래프인지 맞추는 문제이다.
노드와 연결된 간선의 개수로 중심 노드를 찾을 수 있고, 각 그래프의 모양은 DFS 돌려서 사이클이 존재하는지 등으로 쉽게 알 수 있다.
3번
주사위를 반으로 나눠서 가져간 후 주사위를 던져 결과의 합이 높은 사람이 이긴다. 이 때 각 주사위마다 적혀 있는 숫자가 다르다. next_permutation
으로 조합의 개수를 구하고, map
같은 자료구조에 담아 내가 이길 수 있는 경우의 수를 로그 시간에 계산하면 된다. 조합 + 이분탐색 문제.
4번
턴제 카드 게임. 현재 손패에서 카드를 내면서 최대한 오래 생존하는 방법을 찾는 문제. 그리디하게 코인을 한 개만 사용해서 바로 pair가 맞으면 내고, 아니면 일단 보류한다. 이 상태에서 맞출 수 있는 pair가 없는 경우 보류한 카드 목록에서 코인 두 개 사용해서 pair를 맞추도록 하면 될 것 같은데 이 문제만 풀지 못했다. 시간이 조금만 더 있었더라면..
5번
무난한 DP 문제다. 색종이 붙이는데 게임판 모양이 좀 특이하게 생겼다. 사다리꼴 위에 부분적으로 작은 삼각형이 올라가있는 게임판을 준다. 맨 앞에서부터 작은 삼각형 붙이는 경우, 혹은 이전에 삼각형을 붙이지 않아 마름모 붙이는 경우로 나눠서 개수 세면 된다.
결과
3학년 issue로 갈려버린게 아닐까? 라고 정신 승리중. 내년에 다시 써야겠다..
아래는 카카오가 올린 공식 해설이다.