공부하고 기록하는, 경제학과 출신 개발자의 노트

일상 속 생각

경력 9개월차로 카카오 이직하기까지 - (1) 원격 인터뷰

inspirit941 2021. 10. 9. 16:31
반응형

https://tech.kakao.com/2021/03/10/kakao-career-boost-program-for-cloud/

 

kakao Career Boost Program for Cloud - 클라우드 하고 싶지만, 잘 모르겠는 분 얼른 오세요!!!!

“이번에 카카오에서 클라우드와 관련된 많은 분들을 모시고 있습니다.클라우드를 잘한다. 당연히 지원하세요! 클라우드를 하고 싶은데, 뭐 하는지 모르겠어, 근데 나 개발은 하는데….얼른 지

tech.kakao.com

 

2021년 3월부터 진행되었던 카카오 클라우드 부스트 경력채용 공고에 지원했고, 최종 합격했다.

카카오 경력직 채용절차 자체는 원격 인터뷰 -> 1차 면접 -> 2차면접 순으로 대부분 동일하게 진행되는 걸로 알고 있다.

신입공채로 들어간 지 9개월만에 이직하기까지 진행한 절차, 질문받은 내용을 복기하기 위한 포스트.

 

난 경력이직이지만 경력이 매우 짧았기 때문에, 일반적인 경력이직에서 묻는 질문의 방향이 다를 수밖에 없었다.

> 이전 회사에서 해온 업무에 관련된 심층질문이 거의 없을 수밖에 없는 경력이었으므로..

경력이직을 준비하시는 분이라면 가볍게 참고할 수 있는 정도의 내용이었으면 좋겠다.

 


경력직 코딩테스트는 신입 코딩테스트에 비하면 별로 어렵지 않았다.

Hackerrank 링크를 받아 Python으로 세 문제를 풀었고, 난이도도 낮은 편이었다.

지금도 기억나는 것 중 하나는

  • 이분탐색을 잘못 구현한 코드를 주고, 세 줄 이내로 변경해서 코드가 정상 작동하도록 변경하기

원격 인터뷰

준비과정

  • 원격 인터뷰 단계는 주로 코딩테스트 결과에 대해 추가 검증을 하고,
    간단한 경력 관련 질문/답변이 진행됩니다. 
  • 부서에 따라 원격 인터뷰에서는 코딩테스트 추가 검증만 진행하고, 
    경력 관련 질문/답변은 추후 1차 인터뷰 단계에서 진행하기도 합니다.

문제 자체가 별로 어렵지 않았어서... 코딩테스트에서 무엇을 검증하는 거지? 싶었지만

문제가 뭐였는지, 어떤 방식으로 문제에 접근했는지 복기했다.

경력이랄 게 없지만, 경력 관련 문답을 대비하려고 이전 회사에서 다루던 기술 스택과 관련된 CS 지식을 찾아보며 준비했었다.


이력서의 경력 항목에, 개인적으로 학습하고 준비했던 개인 프로젝트를 넣었었다. 

https://inspirit941.tistory.com/347

 

화상 모의면접 연습 플랫폼 개발 프로젝트 (1) - 채팅 DB 아키텍처 고민하기

Yapp 동아리의 개발 프로젝트였던 화상 모의면접 연습 플랫폼 "위더뷰" 개발에 백엔드 개발자로 중도 합류했다. github.com/witherview/witherview_backend witherview/witherview_backend 🎯 위더뷰 Backend. Con..

inspirit941.tistory.com

요거 개발하면서 내가 기여한 점, 사용한 기술스택을 특히 중요하게 대비했었다.

  • 이전 회사에서 다루던 기술스택은 .Net, MSSQL / Oracle 등이었는데..
    취준생 때도 준비했던 일반적인 기술스택인 Java, MySQL, SpringBoot 지식의 학습과 활용능력을 검증받고 싶었다.
    그게 나에게 더 유리할 거라 판단했다.
  • 취준생 때 했던 프로젝트들은 너무 예전에 했던 것들이 되었고,
    경력이직에서 어필하기엔 완성도가 낮고 심도깊지 못하다고 판단했다.

면접과정

Google Meets로 45분 정도 진행되었고, 면접관 2: 면접자 1. (3:1이었나..? 잘 기억이 안 난다)
(알고보니) 실제로 같이 일하게 될 팀원 / 팀장과 면접을 진행

 

내 경우는 코딩테스트 검증은 5~10분 정도에서 끝났고,

대부분의 질문은 '경력란에 기술했던' 개인 프로젝트에 관련된 CS내용 위주로 진행되었다.

 

유의사항
신입공채가 아니라 경력이직이기 때문에, 지원한 팀과 면접에 참여한 면접관 성향에 따라 요구하는 CS지식의 내용이 완전히 다르다.
"카카오는 경력면접에서 이런 식의 내용이 나온다 / 이런 방식으로 질문하더라" 라고 섣불리 일반화할 수 없다
는 점을 참고해 주었으면 좋겠다.

 

면접에서 나왔던 질문을 복기하자면

  • 스프링 프로젝트에서 적용한 자바 버전의 Garbage Collection이 무엇인지? 그게 어떻게 동작하는지 설명해달라
    -> Java 11의 G1GC를 설명했다.
  • REST API에 대해 아는 대로 설명해달라
  • HTTP 메소드를 아는 대로 설명해달라
    • GET / POST의 차이는?
    • Status Code의 의미를 아는대로 설명해달라
  • 리눅스 명령어를 아는 대로 설명해달라
    • 리눅스 서버에 문제가 생겼다면 어디서부터 해결하는 게 좋을까?
  • 웹서비스를 제공해 본 적 있는가? 어떻게 Serving 했는가?
  • 프로젝트를 진행할 때 형상 관리는 어떻게 했나, 팀원과 어떤 식으로 협업했나
  • DB의 transaction 의미, 어떨 때 주로 쓰이는지
  • RDB / NoSQL 차이는? indexing 방법으로 B+tree와 hash 방식이 있는데, 각각의 특징과 차이점을 설명해달라
  • Merge Sort, Quick Sort 차이점
    • Quick Sort의 시간복잡도가 최악의 경우 N^2인데도 사용하는 이유?
  • Python에서 사용하는 Sorting 알고리즘을 설명해달라 (코테에 사용한 언어가 Python이었기 때문)
  • 기본 자료구조를 아는 대로 설명해달라
  • JVM과 GC 아는대로 설명해달라
  • Java에서 제공하는 동기화 방법은? Java Collection / Stream의 차이는?
  • Override / Overloading 차이점?
  • ...

 

경력사항과 이력을 감안해서였는지

  • 기초 CS지식은 어디까지 알고 있는지
  • 사용한 언어인 Java, Python 관련해서 어디까지 알고 있는지 

확인하기 위한 질문이 많았다.

질문은 단순하지만, 내가 어디까지 알고 있는가에 따라 답변의 길이가 달라질 수밖에 없는 형태였다.

답변을 간단명료하게 했을 때 종종 꼬리질문이 들어왔다.

 

아는 부분은 최대한 자세히 설명하려고 했고, 모르는 부분 (특히 리눅스...)은 잘 모르겠다고 솔직히 말했다.

 

반응형