My Job Interview Record (2019 summer)

이번 여름 졸업을 앞두고 구직 활동을 한 결과, 얼마전 운좋게도 미국에 본사를 두고 있는 한 글로벌 IT 기업의 커널/하이퍼바이저 팀으로부터 잡 오퍼를 받았습니다. 취업을 향한 한걸음 한걸음이 어둠 속을 더듬더듬, 때로는 막무가내로 헤쳐나가는 느낌이었는데, 이런 저의 경험을 공유하는게 어떤 분들께는 도움이 되지 않을까 싶어 공유해 봅니다.

목표설정

취업을 할까 포닥을 할까 모호한 고민만 하다가 어느새 4월 중순이 되어서야 해외 IT 회사로 직장을 구하겠다는 목표가 설정되었습니다. 그제서야 든 생각은 너무 늦었다, 준비가 부족하다, 하는 것이었습니다. 취업을 위해 뭐 하나 준비한게 없더라구요.

일단은 졸업 후 국내에서 취업 준비를 탄탄히 해서 내년 봄 시즌에 해외 글로벌 IT 기업에 취업하는걸 목표로 하되, 당장 취업 준비를 시작하고 붙을 가능성은 없겠지만 볼 수 있는 면접은 연습삼아서라도 보기로 마음을 먹었습니다.

취업을 위한 준비

가장 시급한 건 영어 듣기 능력이었습니다. 토발즈의 인터뷰와 키노트, 리눅스 파운데이션 주최 컨퍼런스 발표들과 리눅스를 주제로 한 팟캐스트 등을 mp3 로 추출해 매일 출퇴근 길에 들었습니다.

코딩 테스트를 연습하기 위해서는 유명한 cracking the coding interview 책도 읽어보고, 이 즈음에 우연히 지인에게 소개받은 leetcode 라는 사이트를 통해 코딩 문제도 풀어보기 시작했습니다. 작년 무렵 지인을 통해 cracking the coding interview 책을 이용한 오프라인 스터디도 진행했는데, 그 경험이 큰 도움이 되었습니다. Leetcode 는 왜 이제 알게 됐나 싶은 생각이 들 정도로 도움이 되었습니다.

링크드인 및 이력서

지인들과의 대화 도중, 링크드인은 내가 지금 직업을 구하고 있는지 아닌지를 알리는 기능이 있다는 걸 우연히 알게 되었습니다. 이걸 켜니 몇몇 회사의 리크루터들이 연락을 줬습니다. 이 회사도 마찬가지였습니다. 채용하는 포지션에 대한 아주 짧막한 설명과 함께, 관심 있으면 이력서를 보내달라는 연락이 왔고, 이력서를 보내니 회사의 해당 포지션 채용 링크를 보내주며 시스템을 통해 지원해 달라고 했습니다.

온라인 코딩

사흘만에 이 회사에서 구축한 코딩 테스트 시스템으로의 초대장이 왔습니다. Leetcode 와 같은 여타 코딩 테스트 사이트랑 비슷하게 되어 있는데, 네개 정도의 문제가 있습니다. 편한 시간을 골라서 문제를 풀 수 있으며, 테스트를 시작하면 중단은 못하고 두시간 내에 테스트를 반드시 끝내야 합니다. 실제 인터뷰어와 전화를 통해 진행하는게 아니다보니 내가 편한 시간을 고를 수 있고, 영어 듣기가 부족한 저로썬 문제가 글로 써져 있어 좋더군요. 제출하고 나면 곧바로 풀이에 대한 전체 테스트 결과도 볼 수 있었습니다.

아주 어려운 문제는 없었고 간단한 자료구조와 알고리즘 위주였기에 무난하게 문제를 풀 수 있었습니다. 하지만 마지막 한문제는 일부 corner case 를 제대로 풀지 못해 점수가 만족스럽지는 않았습니다.

전화 인터뷰

몇일 후, 전화 인터뷰 하고 싶으니 일정을 잡자는 메일이 왔습니다. 적당히 일정을 잡고 인터뷰를 진행했습니다.

애초에 외국 회사는 온사이트 인터뷰까지 진행되면 후보에게 비행기표 등을 지불해야 되니 이 단계에서 가급적 많은 후보자를 탈락시킨다고 합니다. 전화 통화는 바디랭귀지가 일체 허용되지 않거니와 통화품질, 인터뷰어의 독특한 억양 등의 문제가 있을 수 있기에 저처럼 영어가 약한 사람에게는 정말 죽을 맛입니다. 다행히도 이번 인터뷰는 통화품질도 좋았고 인터뷰어의 발음도 제 귀에 또렷하게 들리는 억양이라 큰 문제는 없었습니다. 그래도 역시 기본 실력이 어디가진 않아서, 몇번은 못알아듣고 버벅이긴 했습니다.

인터뷰는 약 한시간 정도 분량으로, 제가 채용되면 함께 일하게 될 팀과 업무, 그리고 인터뷰어 자신에 대한 간단한 소개를 시작으로, 제 소개와 그에 대한 문답, 업무적 경험에 대한 질문, 기술적 질문으로 이어졌고, 막판에 약 5분 정도 제가 회사에 대해 질문할 수 있는 시간으로 구성되었습니다.

소개 후의 문답은 제가 소개한 제 연구들에 대해 깊은 질문이 왔는데, 평소 하는 일이라 쉽게 대답할 수 있었습니다.

업무적 경험에 대한 문답에서는 어떤 특정 상황에 처했던 경험을 이야기 해달라고 하는데, 이게 꽤 어려웠습니다. 질문받은 경우에 처한 경험이야 많지만 그 중 어떤 걸 골라서 이야기해야 좋은 인상을 얻을까 고민하게 되거든요. 팀원의 반대 의견에 부딪혔을 때에 대한 경험도 요청받았는데, 재밌게도 그날 아침에 함께 연구를 진행하고 있는 친구와 격렬하게 토론했던 즐거운 경험이 있어 그걸 이야기 했습니다. 다른 질문들에는 오픈소스 활동과 개인 프로젝트에 대한 경험도 이야기 했습니다.

기술적 질문은 커널의 동작 구조 및 원리에 대한 몇가지 질문이 있었습니다. 역시 밥먹고 하는 일이다 보니 어렵지 않게 답할 수 있었습니다.

마지막 질답 시간엔 무슨 질문했는지 기억이 잘 안나는데, 내가 이 면접 통과하고 함께 일하게 되면 어떤 일을 하게 될지, 내가 소개한 연구들 중 어떤 내용이 회사에 도움 될 수 있을거라 생각하는지 뭐 그런 질문을 한 것 같습니다.

전화 중에도 코딩 테스트가 있을 줄 알았는데, 없었습니다. 다행이었죠.

온사이트 인터뷰 제의

다시 몇일 후, 2차 전화 인터뷰가 있겠거니 하고 있었는데, 온사이트 인터뷰를 보자는 메일이 왔습니다! 예전에 모 회사와는 대략 네다섯번까지 이어지는 전화 인터뷰를 하면서 파김치가 되었던 기억이 있는데, 이번엔 한번의 전화 인터뷰만에 스크리닝이 끝나서 정말 기뻤습니다. 메일은 온사이트 인터뷰 가능한 일정 (3주의 기한을 줬습니다), 일하게 된다면 언제부터 일할 수 있는지, 원하는 연봉은 얼마인지, 인터뷰 보러 오는데 비자 필요한지 등을 물어왔습니다.

적당적당히 일정이 잡혔고, 회사에서 비행기표와 호텔을 예약해 줬습니다. 호텔은 이틀을 예약해 줬습니다. 앞에서 이야기했듯 사실 이때까지만 해도 전 이 회사에 붙을 거라는 생각은 없었습니다. 회사가 면접 통과하기 어렵기로 유명한 회사이기도 하고 준비가 부족하다고 생각했으니까요. 이 시점까지만 해도 그저 공짜로 외국여행 하는구나 싶었죠.

온사이트 인터뷰

온사이트 인터뷰는 채용되면 실제 제가 일하게 될 오피스에서 아침 10시부터 오후 4시까지 6시간동안 이루어졌습니다. 한시간마다 한명씩 다른 인터뷰어가 들어왔는데, 중간에 한번은 두 인터뷰어가 함께 들어왔습니다. 따라서 총 여섯번의 인터뷰를 본 셈이며, 매 인터뷰마다 형식은 전화 인터뷰와 비슷했습니다. 인터뷰어의 회사와 자기 자신에 대한 소개, 제 소개와 그에 대한 문답, 업무적 경험 질문, 기술적 질문, 마지막으로 제가 질문하는 시간.

붙을리가 있냐, 여행이나 하자 하는 생각으로 왔지만 막상 당일이 되자 굉장히 긴장되더군요. 그런데 이날 만난 직원들은 너무나도 친절하고 유쾌했습니다. 막상 면접이 시작되니 면접을 본다기보다는 기술 커뮤니티 밋업에서 만난 사람들이랑 즐거운 기술 이야기 하는 느낌이라 너무 즐거웠습니다.

오후 12시부터 한시간은 점심시간이라 인터뷰어 한명과 함께 식사했습니다. 식사가 인터뷰의 연장인 셈이죠. 앞서 이야기한대로 어찌나 긴장이 풀렸는지 이 때 인터뷰어 앞에서 맥주까지 한잔 했습니다.

그 중 두번의 인터뷰는 화이트보드를 사용한 코딩 인터뷰가 포함되었습니다. 그 와중에 가장 긴장한 시간이었긴 한데, 역시 즐겁게 진행되었습니다. 다행히 평범한 자료구조 문제였기에 조금 버벅이긴 했지만 일단 코딩을 하는건 어렵지 않았으며, 이후 관련한 질문에 답하고 개선을 어떻게 할 수 있을지 논의하고 추가 코딩을 했는데 이 과정 역시 즐거웠습니다.

인터뷰가 끝나고 나선 붙든 떨어지든 상관 없지만 평생 잊지 못할 만큼 즐거운 시간이었고 이런 시간을 앞으로도 갖고 싶다, 떨어져도 여한이 없다는 생각이 들었습니다. 면접을 본게 아니라 커뮤니티 모임 같은데 가서 놀다 온 느낌이었죠.

오퍼

온사이트 인터뷰가 금요일이었습니다. 현지 시간으로 화요일, 인터뷰에 통과했으니 정식 오퍼를 보내겠다는 연락을 받았습니다.

정리

준비부터 오퍼를 받기까지의 제 경험을 정리해 봤습니다. 준비도 능력도 부족한데 어디까지나 운이 좋아서 면접을 통과한지라 다른 분들께 이 기록이 얼마나 도움이 될지 모르겠습니다. 그래도 공유하지 않는 것보다는 낫겠죠. 누군가에겐 이 기록이 도움이 되길 빌어봅니다.

Avatar
SeongJae Park
Kernel Development Engineer

SeongJae Park is a programmer who loves to analyze and develop systems.