본문 바로가기
SWE/커리어

Amazon SWE - OnSite Interview

by S나라라2 2022. 6. 22.
반응형

미국 아마존 개발자 인터뷰 후기


레주메를 내고, 온라인 코딩 시험을 봤다. 이 과정을 자세히 보고 싶으면 Online Coding Challenge에서 볼 수 있다.

3. Phone screen

폰스크린은 지원자가 괜찮은 사람인지 기본적인 사항을 확인하는 단계이다. 보통 코딩 시험 전후로 리쿠르터와 15~20분 정도 전화하는게 일반적이다.

한국에 있는 나와 미국에 있는 리쿠르터가 전화 시간을 맞추는데 애를 먹었다. '오늘 돼?' '오늘 미국 시간으로 _시는 어때?' '나 12~3시까지 돼' 이런 메일만 계속 주고 받았다. 그리고 그 당시 나는 국제 전화로 한다는건지, 어떻게 나한테 전화를 할 수 있는건지 의문이 가득했다.(나중에 다른 회사를 겪어보니 인터넷 콜(teams)을 사용하는 것을 알 수 있었다.)
스케줄링 메일만 주고받다가 결국에 나는 폰 스크린을 안했다. 이럴수가 있는건가...? 내 담당 리쿠르터가 워낙 쿨하고 편하게 메일 쓰는 스타일이라서 나도 쉽게 넘겼는데 나중에 이 일을 후회하게 됐다... 흑..

*다른 FAANG 회사의 리쿠르터와 폰콜을 했었는데 그건 Google phone screen 에 따로 포스트해놓겠다.


3-1. 인터뷰 준비 컨퍼런스
리쿠르터가 지원자에게 인터뷰를 설명해주는 단계이다. 단순히 인터뷰 설명뿐만이 아니고, 어떤 것을 준비해야 하고, 어디를 참고하고, 대답할 때 어디에 중점을 두면 좋은지 꿀팁 대방출 시간이다!! 이 단계는 담당 리쿠르터에 따라 다른데, 보통은 다 해준다고 한다. 왜냐면 리쿠르터는 지원자가 회사에 합격하는게 본인 업적에 좋은거니까~

내 리쿠르터가 메일로 자기 채용팀의 어떤 사람이 컨퍼런스 해줄꺼다~ 이 때 온라인 미팅 들어와라~ 하고 미리 알려줬다. 온라인 미팅에 들어갔더니 참석자가 채용팀 3명, 지원자 3명이 있었다. 10분(?)정도 인터뷰 전반적인 과정을 설명해주고 Q&A시간을 가졌다. 나는 단체 컨퍼런스에서 영어로 말하는게 겁나서 조용히 듣고 있었다. 일본인으로 보이는 이름의 지원자가 두 개 정도 질문하고 끝났다. 우리보고 너무 질문이 없다고 했다ㅋㅋㅋㅋ


4. Onsite Interview

[온사이트 인터뷰 방법]
아마존은 하루안에 강도 높게 인터뷰를 하는 것으로 유명하다. 네 번의 인터뷰를 하루에 몰아서 하는 것이다. 각 인터뷰 세션은 1시간 정도 소요되고 각각 Amazon Leadership Principles에 근거한 질문들을 하고, 알고리즘 문제나 시스템 디자인 문제를 풀게 된다. 나는 SWE1 레벨을 지원하였기 때문에 다행히 시스템 디자인 문제는 4번의 인터뷰중 1번이었다.

면접관은 다음과 같이 구성된다.

HR매니저 
실무 개발자1 
실무 개발자2 
bar raiser 
(+shadow)


여기서 특이한 점은 bar raiser라는 사람이다. 아마존의 채용에서 독특한 점으로 꼽히는 부분인데 한마디로 평균을 높이는 사람이다. 아마존에서도 일을 잘 하고 따로 선별되서 교육을 받은 사람이 bar raiser를 할 수 있다고 한다. 다른 팀의 유능한 bar raiser가 참석해서 이 팀의 채용을 까다롭게 심사하는 것이다. 이 팀이 아무리 인력이 급해도 아무나 뽑지 못하도록 막는 역할이다.

인터뷰 결과에 따른 오퍼 여부는 아래와 같다.

4명 모두 pass : 오퍼
3명 pass, 1명 neutral : 오퍼
3명 pass, 1명 fail : 리젝
2명 pass, 2명 fail : 리젝
2명 pass, 2명 neutral : 리젝

한 번의 인터뷰에서라도 fail을 받으면 최종 오퍼를 받지 못하게 된다.

[인터뷰 전 나의 상태]
인터뷰 과정이나 후기를 찾으면 찾을수록 겁이 나기 시작했다. 내가 어떻게 장장 4시간 동안 영어로 대답을 하지... 맙소사...!! 할 말도 없고, 질문 이해도 못할 것 같고, 시스템 디자인은 해본 적도 없는데,,, 특히 나는 web쪽 지식은 전무한데 시스템 디자인 문제는 대부분 웹쪽 지식이 필요했다. 인터뷰 준비 과정 동안 진짜 부담감을 많이 느꼈던 것 같다 흑흑 ㅜㅜ 가장 힘들지만 가장 열심히 준비했던 시기이다.


[인터뷰 스케줄]
아래는 온사이트 인터뷰 스케줄표이다.

출처 : https://www.amazon.jobs/en/software-development-interview-prep?INTCMPID=OAAJAZ100026B#/lessons/gnEldglDNlJ3by3rdebZqfnkf6BUN_XJ

Amazon공홈에서 발췌한거고 나도 위와 비슷한 스케줄을 HR매니저로부터 전달받았다. 차이점이 있다면 나는 2개 인터뷰 후에 휴식시간이 30분이었다.

[Recruiting Coordinator와의 대화]
온사이트 날짜가 픽스되고 코디네이터에게 메일이 왔다. 기본적인 사항들을 물어봤다. 나의 비자상태, 내가 기대하는 연봉, 언제부터 일을 시작할 수 있는지, 다른 회사로부터 오퍼받은 게 있는지 등등.
나는 사실대로 아마존을 통해서 비자를 받을 수 있었으면 좋겠고, 연봉은 160k쯤, 다른 회사 오퍼 받은 건 없다 등등을 다 말했다. 근데!! 나중에 협상 팁을 찾아보니까 이렇게 먼저 다 말하면 불리하다고 한다. 그리고 연봉도 너무 낮게 불렀음… 허허

[온사이트 인터뷰]
드디어 온사이트 인터뷰이다! 당일날까지도 인터뷰 취소할까 몇백번 고민했다ㅋㅋㅋ 인터뷰는 너무 무서워
한국시간으로 새벽1시부터 4:30까지 진행했다.

-첫 번째 면접
첫 번째 면접관이 진짜 친절했다. 본인에 대해 먼저 소개하고 내 소개를 간단히 물어봤다. 그리고 본인이 인터뷰 내용을 타이핑할꺼라면서 양해를 구했다.(다른 면접관 세 명도 동일한 패턴으로 얘기한 거 보면 아마존에서 채용 교육을 받은 부분 같다.) 엄청 젠틀해서 기분 좋은 시작이었다.
Amazon leadership principle에 기반한 질문을 2~3개 받았다. 그리고 코딩 테스트로 넘어갔다. 릿코드에서 푸는 코테보다 더 실무적이고 실생활과 유사한 질문이었다. 문제를 풀어나가면서 제약조건에 대해 계속 질문했는데, 제약 사항은 없다고 했다. 본인이 실제로 현업에서 이런 문제가 있을 때 어떤 트러블 슈팅을 해야하는지 고려하면서 풀어야 하는 것 같았다.
문제를 다 풀고 인터뷰 종료까지 10분 정도 여유가 있었는데, 본인에 대해 질문하라고 했다. 제일 먼저 질문했던 건 방금 내가 푼 문제에 대한 의견 물어봤던 것 같다ㅋㅋㅋ 문제 풀 때 반응이 별로 없어서 걱정했기 때문.. 근데 의심없이 잘 풀었다고해서 마음 편히 개인적인 질문들을 했다. 뭐 초반 자기소개에서 무슨 일 한다고 했는데 이 일 왜~~ 이런 질문들을 했다.

-두 번째 면접
두 번째 면접관의 대사와 면접 방식도 첫 번째와 동일했다. 다만 말이 진-짜 빨라서 초집중하면서 들었다. amazon leadership principle 질문에서는 이미 내가 첫 번째 세션에서 들었던 질문이라서, 내가 '이 에피소드 앞에서 얘기했었는데 또 해도 돼?'(왜냐면 면접관들 다 레포트처럼 적고 있으니까) 라고 물어봤더니 면접관이 내가 원하면 다른 원칙에 대해서 질문을 해줄 수도 있다고 했다. 그래서 나는 다른 원칙에 대해 질문을 요청했다.
테크니컬 테스트로 넘어갔다. 방식이 조금 특이했던게 나에게 문제를 내지 않았다. 그저 어떤 알고리즘을 설명해주면서 나보고 단계별로 계속 물어봤다. 여기서 시간 복잡도는? 무엇을 바꾸면 개선이 가능해? 이걸 코드로 짜봐. 코드에서 이 부분을 이렇게 바꾸면 어떻게 돼? 다른 방법 생각해볼 수 있어? 이렇게 코드에 기반해서 핑퐁 대화만 계속 주고받았다. 그리고 최종적으로 다른 어떤 알고리즘을 도출할 수 있었다.
인생 통틀어 제일 재미있었던 면접이었다. 많이 배우고, 찐개발자와 코드로 소통하는 느낌이었다.


-세 번째 면접
면접관이 팀장님이었다. 앞에서 영어 입이 많이 풀려서인지 대화를 잘 이어나갔다. 분위기가 엄청 좋았다.
이번에도 인성(경험) 질문을 하고 테크니컬 테스트로 넘어갔다. 이번에는 시스템 디자인 문제를 풀었다. 엄청 기본적인 작은 기능을 설계해보는게 문제였는데 내가 너무 못했다. 인비전 사용법도 낯설고 평소에 설계도를 많이 그려보지 않은 탓에 헤맸다. 시간을 많이 까먹었다. 점점 면접관의 표정이 굳어갔다. Whiteboard에 그림을 그리며 설명하는데 선이나 도형이 한 페이지에 보이지 않아서 옮기겠다고 했는데 필요없다고 했다. 대충 이거 캡처해서 자기 리포트에 쓰면 된다고 그냥 빨리 끝내기나 하라고 했다. 엄청 하찮아하는 그 표정을 지금도 잊을 수가 없다...하하.... 진짜 이 때부터 멘붕이었다.
어찌저찌 정리하고 마지막 10분 Q&A시간을 가졌다. 면접관이 나한테 질문하라고 했다.
근데 내가 질문이 없다고 했다. (지쳐서 말할 정신이 없었음) 그래도 하라고 해서 진정하고 그냥 속마음을 얘기했다. “내가 지금 면접 너무 망쳐서 속상하다. 그래도 내가 부족한 부분 알 수 있었던 시간이었다. 면접 잘 이끌어줘서 너무 고맙다. 많이 배울 수 있었다.” 이런 말들 했던 것 같다. 다행히도 면접관이 나쁘지 않았다 이런 반응 줬던 것 같다.

-네 번째 면접
앞에 면접에서 혼이 나갔다. 그래서 시작하자마자 화장실 한번만 다녀온다하고 심호흡하고왔다.
똑같이 인성과 테크니컬 테스트를 봤고 준비한대로 잘 했던 것 같다.
면접 끝~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

면접 끝나고 창밖을 보니 해가 뜨고 있었다

면접 끝나고 시간을 보니 새벽 5시였다. 꼬박 밤을 샜지만 하나도 피곤하지가 않았다. 오히려 도파민이 솟구치는 느낌이었다! 엄청난 쾌감, 성취감, 안도감, 모든 감정이 뒤섞였다. 시스템 디자인 면접에서 말아먹었지만 후회는 없었다. 아마존 면접 프로세스에 엄청난 만족을 했다. 미국의 찐개발자들과 수평적으로 사람대사람으로 대화해볼 수 있는 소중한 시간이었다. 오히려 내가 문제를 풀면 그거에 대해 피드백을 주고 개선해주는 멘토가 있는 느낌이었다. 정말 많이 배울 수 있었던 값진 경험이었다.





[면접 결과]
미국 시간으로 금요일 오전에 면접을 봤고, 월요일에 바로 리쿠르터한테 연락이 왔다.
🎉합격🎉



이번 포스터는 단순히 면접 회고문이었다. 준비 방법과 꿀팁, 정보를 얻은 사이트들은 모아서 따로 포스팅을 하겠다. 그리고 오퍼 단계도 따로 정리하겠다.

P.S. 미리 스포하자면 나는 결국 아마존을 가지 않았다. 미국에 가는 것도 마음을 접었고 지금은 현재 회사에 만족하며 다니고 있다 :)

반응형