구글 코리아 면접 후기

오인규·2021년 6월 29일
174

취업

목록 보기
1/3

google

🐣 면접에 앞서서

우선 어떻게 구글에 지원하게 되었나 부터 얘기를 해볼까 한다.

나는 서울의 S대학(서울대 아님)에서 CS를 전공하고 있고 4학년이다.

주변에서 사람들이 졸업하고 어디갈꺼냐 물어보면 구글이나 애플중에 하나 가지 않을까 대답하는 근거없는 자신감, 위기의식 없는 태도를 보이곤 했는데,

졸업이 슬슬 다가오니 취업에 대한 조바심이 나는것은 어쩔 수 없었나보다.

주변의 취준생들에게 정보를 얻어서 카카오톡 오픈카톡방 "개발자 취업 공지방"이란 곳을 알게 되었고, 톡방에 들어가서 각종 채용공고 알림을 받을 수 있었다.

SW 취준생이라면 SW 취업 공고 오픈카톡방을 하나는 들어가는걸 추천한다. 정말 말 그대로 전국의 모든 SW관련 취업공고가 하나도 빠지지 않고 올라온다.

아직 졸업을 한것은 아니기 때문에 제일 가고싶은, 제일 hiring bar가 높은 회사부터 차례대로 지원하기로 계획을 세웠다. 선형탐색

이번 학기에는 흔히 말하는 "네카라쿠배"급의 회사에 넣어보고 안되면 다음학기는 한단계 낮춰서 넣어보고, 졸업후에는 어디든 갈 생각이였다.

그런 생각에서 취업 공지방에 올라오는 채용공고중에서 엄청 마음에 드는 회사들만 지원서를 넣었다.

자소서 쓰고, 코테 준비하고, 코테보고 하는 날들중에 톡방에서 구글 채용 공고가 올라온걸 발견했다.

해당 채용공고 링크

구글은 역시 구글인건지 채용공고부터가 영어다 ㅠㅠ
대충 핵심만 뽑아보자면

지원 최소 요건:

  • 컴퓨터 공학관련 학사혹은 이에 상응하는 경험보유
  • 하나 이상의 프로그래밍 언어 사용 경험
  • 영어 잘해야함

우대요건:

  • 석박사급
  • 리눅스, 모바일, 머신러닝, NLP, ... 등등 중에서 하나이상 해본사람

읽어보니까 우대요건도 충족 안되고 최소 요건도 충족이 안되는 상태다.

그래도 일단 무지성 지원하기로 마음 먹었다.

최고의 회사에 들어가서 최고의 개발자로 성장하고 싶었다.

그리고 원서 접수하는데 돈드는건 아니니까!

📃 원서 접수

지원하기를 누르니까 이것저것 쓰라고 폼이 나오는데 생각보다 간단해서 좋았다.

뭐 지원동기를 1300자 내외로 쓰시오 그런건 없고 주소, 학교, 생년월일 쓰라고 나오고 레쥬메, CV같은 파일을 첨부 할 수 있게 되있었다.

Awesome-CV를 이용해서 영문 커버레터를 만들고 노션으로도 영문 자기소개 페이지를 만들어서 링크를 걸어서 제출했다.

아아, 그리고 transcript(성적증명서)도 제출해야된다. 이건 모두의 프린터를 이용해서 pdf파일로 만들어서 제출했다.

지원하고 나서도 사실 큰 기대는 하지않고 있었고, 연락이 한동안 안오길래 떨어졌나보다 싶었는데 구글은 항상 잊을때쯤 연락한다.

🏆 구글 온라인 코딩 챌린지 GOCC

원서 넣고 한 3주쯤 됐나? 구글에서 연락이 왔다!

Google Online Coding Challenge 라는 코딩테스트 초대 메일이 왔다.

일단 준비를 해야되니까 구글링 해서 최대한 정보를 모았고, geeks for geeks라는 사이트에서 인도 GOCC 복기 문제를 보면서 출제 스타일을 익히고 연습했다.

GOCC 초대 메일이 와서 이 글을 읽고 있다면 무조건 GOCC india를 검색해서 (유출된) 문제를 익히는것을 추천한다.

트리, 비트연산 문제가 인기 토픽인것같았다.

나름 준비를 한다고 공부를 하고 시험을 봤는데 너무 어려웠고, 시간도 부족했다.

심지어 한문제는 시간이 없어서 공개 테스트 케이스도 통과 안되는 상태로 제출을 하며 끝났다.

떨어졌구나 싶어서 잊고 있었는데 역시 구글은 잊을만하면 연락을 준다.

🎉 구글 코딩 인터뷰

코테가 끝나고 한달정도 됐을쯤에 구글 리크루터한테 다음 과정 안내 메일이 왔다. (이 과정부터는 담당 리크루터가 생긴다)

인터뷰가 있을껀데 어떻게 어떻게 준비하라면서 자료를 보내줬다.

지원요건 학사졸업이 충족되지 않아서인지 인턴쉽으로 분류가 되어서 면접 프로세스가 진행되었다.

왠지 모르겠는데 면접언어로 한국어가 선택 가능했다. 주변에 비슷한시기에 구글 인터뷰를 보는 분들이 몇분 계셨는데 그분들은 경력직이라서 그런지 무조건 영어였다.

진짜 얼떨떨하면서 기쁘면서도 걱정되기도하고 복합적인 마음이였다.

그래도 천재일우의 기회가 나한테 왔다고 생각하고 최대한 준비를 했다.

유튜브로 나름의 정보를 조사한 결과 인턴쉽은 2번 온라인 인터뷰 보는게 최종이고, 결과가 애매한경우 추가로 1번 온라인 인터뷰를 한번 더 볼 수도 있다고 한다.

그리고 많은 사람들이 leetcode 온라인 문제풀이 서비스와 cracking coding interview 책으로 준비할 것을 추천했다.

도서관에서 cracking coding interview (코딩인터뷰 완전분석이라는 이름으로 한국어 번역판도 출간되어있다)를 빌려서 읽고, 인터뷰를 위해서 구글 독스에 IDE 도움없이 코드 작성하면서 영어로 설명하는 연습을 했다.

아, 인터뷰 언어 한국어로 하고싶다고 리크루터한테 말했는데 하나는 영어, 하나는 한국어로 인터뷰가 잡혔기 때문에 영어 연습도 해야했다.

🤔 구글의 면접은 뭐가 다른가?

나도 그랬지만, 구글 인터뷰라고 하면 엄청 어려운 알고리즘을 풀게하거나 면접자를 괴롭히는 같은 이상한 질문들이 나올거라고 보통 생각하는것 같다.

"버스/비행기안에 골프공을 몇개 넣을 수 있냐"같은 류의 브레인티져는 구글 면접질문이라고 알려져있고 예전에는 많이 나왔다고 하는데 최근에는 그런 브레인티져 문제는 출제하지 않는다고 한다.

그리고 의외로 코딩 인터뷰에서 풀게되는 문제들은 알고리즘에 미친 사람들만 풀 수 있게 나오지 않는것 같다.

인터뷰 영상1

인터뷰 영상2

구글에서 공개한 mock interview 영상들인데 구글 인터뷰에서는 단순히 문제를 빠르게 뚝딱 푸는게 중요한게 아니라 끊임없이 면접관과 소통하고 내 생각, 논리를 표현하는 것을 중요하게 생각하기 때문에 어려운 문제를 더 푸는것보다 쉬운문제를 설명하면서 푸는것을 준비해야 한다.

위의 인터뷰 영상1에는 인터뷰 프레임워크라고 해서 어떻게 답변할지 구체적인 틀을 제시하는데 살펴보면 다음과 같다.

  1. 명확히하기 (clarify)
  2. 정의하기 (Define)
  3. 제안하기 (Propose)
  4. 대안 (Alternatives)
  5. 구현하기 (Implement)

🌮 근처에서 제일 맛있는 타코집을 찾아보세요

예를들어 문제로 면접관이 근처에서 제일 맛있는 타코집을 찾아보세요라고 문제를 냈다고 하자. 이에대한 나쁜 응답과 (구글에서 가이드하는)좋은 응답은 아래와 같이 나뉜다.

나쁜 응답: 네이버지도 켜서 타코라고 검색하고 거리순으로 필터링한 후 맨위에 뜨는 집부터 보면서 별점이 높은걸 골라요.

좋은 응답: "근처"의 범위에 대해서 더 설명해주세요.
"맛"은 주관적일텐데 맛있다의 기준을 어떻게 세워야하나요?
타코집은 메뉴에 타코가 있으면 전부 타코집이라고 가정해도 되나요?
(대답을 다 듣고) 그러면 ~한 ~를 찾으면 되는거군요.
제 생각에는 ~해서 ~하면 될 거같은데 제가 놓친게 있나요?
아 그러면 A방법으로 찾는방법과 B방법으로 찾는 방법이 있어요.
A방법은 ~해서 ~한 장점이 있고 ~한 단점이 있습니다. 반면에 B방법은 ...
(면접관이 B방법이 좋을것 같으니 B로 구현을 시작해보라고함)

🇯🇵 첫번째 인터뷰

인터뷰는 전부 구글 플랫폼 안에서 이뤄지게 된다. (궁극의 구글 유니버스)

초대가 구글 캘린더로 오고, 구글캘린더에 있는 링크를 통해서 구글밋에 접속해서 면접관과 처음 만나게 된다. 면접관은 사전에 준비된 구글 독스 링크로 들어오라고 안내를 해준다. 구글 독스는 여러명이 동시에 편집가능해서 화이트보드처럼 면접관과 대화할때 사용가능하다.

구글러는 왠지 후광이 날꺼같고, 멀끔하게 차려입고 올꺼라고 생각한것과 다르게 처음 들어오신 면접관님은 프리하게 온 느낌이였다.

면접관님이 자기소개를 하는데 이분 영어가 심상치 않았다. 구글러라고 해서 다 네이티브급 영어실력을 갖고있지는 않은것같다. 발음이 좀 알아듣기 힘들었는데 그래도 집중해서 들으면 거의 알아 들을 수 있었다. 나중에 면접 끝나고 알게된 사실인데 이분은 타이완에서 와서 일본 구글에서 일하고 계신거였다.

면접 문제는 특이하고 재밌었다. 아마 죽을때까지 다시는 이 문제랑 똑같은 문제를 면접장에서 만날 일 없을것 같다고 생각할 만큼 특이한 문제였다. 카테고리를 분류하자면 Ad-hoc쪽에 가까울것같다. 이 문제를 위한 알고리즘이 따로 있는지는 모르겠다.

처음 들었을때는 쉬운 문제 같았다, 이거 이렇게 이렇게 하면 되는거 아니에요? 하니까 면접관님이 반례를 들어서 다른 고려해야할 사항들을 설명해줬다. 그제서야 정신을 차리고 추가 고려사항을 물으며, 문제 정의를 명확히 했다.

다시 문제를 정리해서 생각해보니까 어떻게 해야될지 감도 안잡히는 것 같아서 무지성 구현을 먼저 생각해서 제시했다.

무지성 구현으로 하면 해결하기 힘든 데이터 특성이 있어서 다른 방식을 찾아야 했고, 인풋 데이터를 전처리해서 변환한 다음에 푸는 방식으로 선회했다.

솔루션 로직 제시단계에서 면접시간이 끝났고 결국 동작하는 코드는 한줄도 작성하지 못한 상태로 면접이 끝났다ㅠㅠ. 망했다 싶었다.

면접관님이 내가 제시한 풀이에 대한 피드백을 계속 주면서 힌트를 주시려고 한거같은데 여기서 영어를 못알아 들어서 힌트를 흘린게 결정적이였던것 같다. I'm sorry? 를 몇번 반복하며 다시 듣고 힌트를 최대한 캐치하려 했는데 좀 놓친게 많지 않았나 싶다.

🇰🇷 두번째 인터뷰

두번째 인터뷰는 구글 코리아 직원과 연결되었다.

두번째로 만난 면접관님도 뭔가 내가 생각했던 완벽하고 꼼꼼한 구글러의 이미지는 아니였다. 푸근하면서 프리한 느낌이였다. 성격도 뭔가 여유가 느껴지는 그런 분이였다. 내가 문제에 대해서 ~라고 가정해도 될까요? 라고 물으면 항상 아, 편하신대로 가정해서 푸시면됩니다~ 편하게~ 편하게~ 하시는 분이였다.

문제가 출제됐는데 이것도 유명한 알고리즘 문제는 아니였다. 굳이 분류하자면 구현문제였다.
하지만 운좋게도 예전에 한번 구현해봤던 내용이였다. 그래도 내가 예전에 구현했던것과 규칙이 다를 수 있으니 다시한번 확인하는 질문들로 문제를 확인하고 솔루션을 제시했다.

면접관님께서 이제 코드로 작성해달라고 하셨고, 어렵지 않게 구현할 수 있었다.

여기까지는 성공적인것같았다.

처음 문제 솔루션 코드를 다 짜니까 이제는 문제가 ~하게 바뀌면 어떻게 하실래요?라는 식으로 계속 문제를 어렵게 변형시켰고, 변형된 문제에 맞춰서 코드를 계속 손보는 식으로 면접이 진행됐다.

아마도 여기서 내가 더 문제가 변경되나요? 라고 묻거나 처음부터 문제가 변경될 가능성에 대해서 염두하고 코드를 설계해야되나요?라는 질문을 던졌어야 하는게 아닌가 싶었다.

사실 처음 인터뷰에서도 인터뷰어가 내 풀이를 들으면서 문제를 조금씩 바꿔줬었는데 (이경우에는 문제가 더 쉽게 바뀌었다), 두번째 인터뷰에서는 문제가 바뀌지 않을거라고 묻지않고 믿어버린것이 내 실수였던것 같다.

계속 변경되는 문제를 풀다가 시간이 종료되었고, 추가적으로 질문하고싶은것 있으면 하라고 하셔서 몇가지 질문을 하고 인터뷰는 끝났다.

🌧 인터뷰 결과

두 차례의 인터뷰가 모두 성공적이지 못해서 속으로 떨어졌구나 싶은 마음이 있었다.

근데 또 구글 코리아 면접에서는 피드백이 나쁘지 않은것같아서 나름 기대도 하고 있었다.

면접관님이 마지막에 언제부터 인턴쉽 가능하냐고 물었었는데 붙은줄알았다...

인터뷰가 끝나고 3주정도 있다가 결과를 메일로 받게되었다.

메일 제목부터가 저희와 인터뷰를 진행해주셔서 감사합니다였다. 이런건 보통 감사합니다가 먼저나오면 불합격이고, 축하합니다가 먼저 나오면 합격인데 ㅠㅠ

그렇게 됐습니다.... 쩦,,,

아무래도 구글의 bar를 넘기에는 내가 부족했던것같다... 인터뷰까지 간것만으로도 운이 좋았다고 생각한다.

이후에 진행한 다른회사 인터뷰는 하나도 떨어지진게 없는걸 보면, 구글 인터뷰를 준비하면서 인터뷰를 바라보는 방식이 바뀌게 되고 성장한것 같다.

구글은 탈락했지만 다행히도 동시에 진행하고 있던 우아한 형제들(배민)의 채용연계형 교육과정에 합격해서 이번 여름 방학동안 참여하게 되었다 🎉

다음글은 🏕 우아한 테크캠프 면접 후기로 이어집니다.

profile
네이버랩스 프론트엔드 개발자

37개의 댓글

comment-user-thumbnail
2021년 6월 29일

👍🏻👍🏻👍🏻👍🏻👍🏻

1개의 답글
comment-user-thumbnail
2021년 6월 29일

이렇게 감질맛나게 끊기 있나요

2개의 답글
comment-user-thumbnail
2021년 6월 29일

작성중... 이게 더 궁금하게 만드네요

1개의 답글
comment-user-thumbnail
2021년 6월 30일

다 쓰고 보라하라 이마리야~~

1개의 답글
comment-user-thumbnail
2021년 7월 5일

인터뷰까지 가신 것도 대단해요!

1개의 답글
comment-user-thumbnail
2021년 7월 8일

I appreciate your work. Your article is very interesting and I must say you have done an incredible job. I think this is one of the most active blogs I have come across.
among us

답글 달기
comment-user-thumbnail
2021년 7월 9일

제목에 이끌려 들어왔는데, 도중에 한 번도 안 끊고 끝까지 글을 읽어버렸네요. 다음 글도 읽으러 갑니다~^^

1개의 답글
comment-user-thumbnail
2021년 10월 3일

안녕하세요, 면접후기 잘 보았습니다 :)
SWE Univ Grad. 서류 통과 기준이 어떻게 될까요? 혹시 프로그래밍 대회 경력 있으셨나요...? 그리고 지원하실 때 리퍼 받고 지원하셨는지...?

1개의 답글
comment-user-thumbnail
2021년 10월 3일

https://careers.google.com/jobs/results/129471307034043078-software-engineer/ 는 대학 졸업한 신입이 지원할 수 있는 걸까요?

1개의 답글
comment-user-thumbnail
2022년 4월 8일

혹시 코테 첫번째 문제는 결과가 어떠셨는제 여쭤봐도 될까요..? 너무 어려워서요 ㅠㅠㅠㅠ

2개의 답글
comment-user-thumbnail
2022년 4월 9일

재밌게 읽었습니다 좋은 글 감사합니다~

1개의 답글
comment-user-thumbnail
2022년 10월 18일

I really like this kind of practical review, it gives me a feeling of lightness and peace like a tunnel rush I love this blog and I will read it often.

답글 달기
comment-user-thumbnail
2023년 11월 3일

이 기사는 Google 인터뷰를 준비하는 데 드는 엄청난 노력과 관심의 예입니다. 혼란스러운 상황 속에서도 작가의 자기계발과 준비가 인상적이다. 인터뷰 영상에 담긴 전략과 해결 방법도 매우 유용합니다. 축하해요! canlı tv

답글 달기