아마존 재팬 불합격 수기 by Elly

  1. 링크드인 프로필은 꼭 설정하시기 바랍니다.
    1. 작년 6월쯤 일본 이직을 알아보던 중, 일본 아마존 팀의 한 Hiring Manager의 프로필을 우연히 클릭한 적이 있었습니다. 그리고 올해 1월, 그분이 제가 프로필을 본 것을 확인하시고 직접 DM을 보내주셨습니다. 서로 같은 회사에 근무했던 이력이 있다며, 현재 본인 팀에서 엔지니어를 채용 중이니 한 번 지원해보라고 포지션 링크를 함께 보내주셨습니다.
  2. OA는 behavioral 파트의 비중이 꽤 높은 것 같습니다.
    1. 지원 후 이메일로 online assessment를 받았습니다.
      1. 첫 번째는 Leetcode 스타일의 coding assessment
      2. 두 번째는 Work Simulation
      3. 세 번째는 Work Style Assessment였습니다.
    2. 1월에 본 OA에서는 코딩 테스트 문제를 모두 통과했지만, 다음 날 불합격 통보를 받았습니다. 이후 3월쯤, 같은 Hiring Manager 분께서 다시 한 번 지원해보라고 연락을 주셨고, 메시지 마지막에 "take some time to answer the workstyles questions carefully ;-)" 라는 말을 덧붙이셨습니다. 이 말을 통해, 1월에 본 OA에서는 behavioral 파트(Work Simulation, Work Style)에서 부족했음을 간접적으로 느낄 수 있었습니다.3월에 본 OA에서는 behavioral 파트에 집중하여 준비하였고, 코딩 테스트는 이전보다 못 봤지만 OA 자체는 통과할 수 있었습니다. 제가 behavioral 문제에 답변할 때 참고했던 두 가지 포인트는 다음과 같습니다:
      1. Amazon은 deadline을 매우 중요하게 생각합니다.
      2. Work Style은 일관성 있게 답하는 것이 좋습니다.
  3. OA 이후의 코딩 테스트에서는 자료구조에 대한 깊은 이해를 요구하였습니다.
    1. OA를 통과한 후 아마존에 재직 중인 엔지니어와 Leetcode 스타일의 인터뷰를 진행했습니다. OA 때 출제된 코딩 문제는 비교적 평범한 Leetcode 문제였으나, 이후 인터뷰에서 나온 문제들은 특히 자료구조에 대한 이해도가 중요했습니다. Phone call 인터뷰에서는 Sliding Window로 풀 수 있는 문제가 주어졌고, 이후 follow-up 질문으로 어떤 자료구조를 사용할 것인지에 대한 구체적인 논의가 있었습니다. 이 과정에서 queue에 대한 깊은 토론이 이어졌습니다.
  4. 외자계 기업을 준비하신다면 Leetcode Premium 구독을 추천드립니다.
    1. Phone call 합격 후 세개의 Loop 인터뷰가 이어졌습니다. Leetcode Premium에서는 회사별로 자주 출제되는 문제를 확인할 수 있습니다. 저는 문제를 빈도순으로 정렬한 후 상위 문제부터 차례로 풀며 준비했습니다. 재미있게도 Loop 인터뷰에서 나온 코딩 문제는 Leetcode의 Amazon 태그 중 가장 상단에 있는 문제와 거의 동일했습니다. Doubly Linked List를 활용해 여러 기능이 있는 자료구조를 직접 구현하는 문제였고, 자료구조의 성능 (Time & Space Complexity)과 설계에 대해 구체적으로 설명해야 했습니다.
  5. Loop 인터뷰의 behavioral 파트에서는 구체적인 데이터 포인트를 수집하는 것 같습니다.
    1. Behavioral 면접에서 한 문장 한 문장마다 상세한 follow-up 질문이 이어져 처음에는 당황스러웠습니다. 하지만 복기해보니, 인터뷰어가 상황을 명확히 이해하고 지원자에 대한 구체적인 데이터 포인트를 수집하려는 의도였다는 생각이 들었습니다.예를 들어, “리스크를 감수하고 A라는 결정을 내렸다”고 답하면→ “만약 A 때문에 문제가 생겼다면 어떻게 대처했을까요?”→ “다른 기능에는 영향을 주지 않는 프로젝트 였기 때문에 문제가 생기면 롤백을 고려했습니다.”→ “그 롤백에는 시간이 얼마나 걸릴 것으로 예상하셨나요?”이처럼 점점 구체적으로 질문이 이어지므로, STAR 기법에 따라 경험을 정리하되 아주 세부적인 상황까지 미리 준비하는 것이 좋습니다. 상황에 대한 질문뿐만 아니라 서비스나 기술에 대해서도 꽤 구체적으로 물어본 인터뷰어도 있었습니다. 따라서 본인의 회사 서비스를 배경 지식이 없는 사람에게 설명하는 연습도 함께 하면 도움이 될 것입니다.
  6. SDE 1 포지션이라면 Object Oriented Programming 꼭 복습하세요.
    1. OOP에 대한 개념이 부족했던 점이 불합격의 원인 중 하나였던 것 같습니다. 아마존 가격 계산 시스템을 low-level로 설계하는 과제가 주어졌고, 설계 중 제가 어려움을 겪자 인터뷰어가 OOP 개념(SOLID 원칙, Open/Closed Principle 등)을 하나씩 질문하셨습니다. 단순히 4대 특성만 아는 수준보다는 개념을 실제 문제에 적용할 수 있어야 합니다.
  7. 시간이 된다면 Team introduction webinar와 같은 이벤트에 참석하는 것도 좋습니다.
    1. 첫 번째 OA에서 불합격한 후, 아마존 팀 소개 온라인 웨비나에 참석했습니다. 그 자리에서 일본 고객들은 쿠폰을 선호하기 때문에 일본 팀에서는 쿠폰 관련 기능이 특히 중요하다는 이야기를 들었습니다. 이 내용을 두 번째 인터뷰에서 자연스럽게 언급할 수 있었고, 제가 이전 회사에서도 쿠폰 관련 업무를 맡았던 경험을 연결하여 설명할 수 있었습니다. 또한 해당 웨비나에는 Hiring Manager도 참석했는데, 그분이 이후 다시 연락을 주신 것이 웨비나 참석과 직접적인 관련이 없더라도, 한 번이라도 더 네트워킹할 수 있었던 좋은 기회였다고 생각합니다.