ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 미국 Microsoft 인터뷰 / 입사 후기 - 준비편
    개발 공부/미국회사생활 2021. 7. 14. 08:25

    마이크로소프트에 입사한지 벌써 1달이 조금 넘었다.

    잊기 전에 기록해두고, 혹시나 나 같은 다른 사람들에게 도움이 되었으면 해서 블로그에 남긴다.

     

    인터뷰 보기 전 스펙

    나는 미국학위가 전혀 없다. 한국 CS 학사 졸업이고 당연하지만(?) 미국 사람들은 한국에 있는 학교들을 모르기 때문에 내가 어느정도의 대학을 나왔는지 알지 못한다. 

     

    대학 졸업 후, 미국 인턴쉽에 지원해 J1 비자로 한인 회사를 1년 다녔다. 그 뒤 결혼으로 영주권을 받고 개발직으로 작은회사 8개월, 미국 법인 삼성을 3년 8개월 다녔다.

     

    인터뷰 준비

    인터뷰 준비 단계는 크게 이력서 / 알고리즘 / 영어 대화 스킬 / 시스템 디자인 4가지로 나누어서 준비했다. 

     

    이력서(Resume)

    나의 경우에는 이력서를 통해 한번 컨텍이 되고 나면 그 다음에는 중요하게 다뤄지지 않았다. 하지만 일단 컨텍이 되야 무엇이든 시작을 할 수 있으니 중요한 단계이다. 같은 타이틀 사람들의 다른 이력서를 보고 많이 연구했다. 어떤식의 설명이 프로페셔널 해보이는지 어떤 경력들을 강조하였는지 등. 경력은 수치화를 해야 명쾌하게 전달이 된다. 예시로 데일리로 100만의 조회수가 있는 웹사이트를 관리하였다거나 데이터 트랜젝션이 1시간당 10만건인 시스템을 유지보수하였다거나. 미국의 이력서는 보통 1장에 보여주는걸 추천하여 포맷도 신경썼다. (요즘은 또 장수는 그렇게 중요하지 않다는 의견들도 있다.) 또 큰 회사의 경우 너무 많은 이력서가 유입되어 키워드로 선별한다고 하니 관련 직종에 필요로 하는 키워드를 포함하고 있는게 중요하다.

     

    이력서만큼 중요한게 LinkedIn 이다. 미국에서 대중적인 커리어를 주제로 한 SNS 인데, 실제로 링크드인을 통하여 리크루터들에게 정말 많은 연락이 왔다. 링크드인을 최신으로 꾸며놓는 것이 중요하다.

     

    링크드인 : Sunju Hong | LinkedIn

     

    나는 회사를 정말 200곳쯤 지원해본 것 같다... 인터뷰 경험도 쌓을겸 조금 직종이 다르더라도 신경안쓰고 지원했다. 회사마다 인터뷰 기록이 남는 곳도 있으니 정말 가고 싶은 회사는 조금 나중에 지원하는 것이 좋다.

     

    알고리즘

    나는 Problems - LeetCode 를 이용하였다. 문제는 무조건 많이 풀어보는 것 보다 인터뷰에 자주 나오는 자료구조나 알고리즘을 목록으로 만들어서 그 목록 위주로 Easy > Medium > Hard 순으로 풀어보았다. 100개정도 풀었을 때부턴 새로운 문제를 풀지않고 같은 문제를 계속 반복해서 풀었다. 

     

    문제를 그냥 푸는 것보다 쓰이는 자료구조나 알고리즘을 말로 설명하는 것을 많이 연습했고 한번 더 Optimize 하는 것에 신경 썼다. 다른 후기에도 나와있고 나의 경험에도, 알고리즘 인터뷰에 Optimize 하는 것을 꼭 물어본다. 알고리즘 별로 Optimize 할 수 있는 패턴은 정해져 있기 때문에 너무 걱정하지 않아도 된다.

     

    리트코드 프리미엄은 이용하지 않았다. Mock 이라는 기능이 새로 나와서 제한시간도 주어지고 인터뷰 처럼 문제를 랜덤하게 골라주는데 이 기능은 자주 이용하였다. 

     

    구글 개발자가 뽑은 인터뷰 TOP 10 알고리즘 문제 :: 미국 개발자 산만한 일기 (tistory.com)

     

    구글 개발자가 뽑은 인터뷰 TOP 10 알고리즘 문제

    1. DFS (깊이 우선 탐색) 2. BFS (너비 우선 탐색) 3. Matching Parenthesis probelm (유효한 괄호 문제) 4. Using Hash Table (해시 태이블) 5. Variables/Pointers manipulation (변수/포인터) 6. Reserve Linke..

    developer-hongjoo.tistory.com

     

    영어 대화 스킬

    나는 대학 졸업 전까지 미국과 정말 상관 없는 삶을 살았다. 영어도 한국식 교육으로 배운 영어가 다였다. 미국에서 5년 정도 살았지만 계속 한국인이 많은 환경에서 있었기 때문에 영어가 많이 부족했다. 그래도 다행인건 요즘은 컨텐츠가 넘쳐난다는 것이다. 유튜브에 Software Engineer Interview Question 을 검색해서 운전할 때, 설거지할 때, 쉴 때 계속 들었다. 검색해 보면 인터뷰 보는것과 똑같이 재연되어 있는 영상이 많다. 같은 영상을 반복해서 들었는데 새로운 인터뷰 관련 지식을 얻는 것 보다 알고리즘을 설명할때 어떤 영어 단어를 일반적으로 쓰는지에 대해 익히는 것이 더 급하다고 생각해서였다.

     

    영어 외에 인터뷰를 위해, STAR Method 로 맡은 프로젝트나 위기를 극복한 경험을 말할 수 있게 준비 하였고 인터뷰 세션이 끝날 때 꼭 있는 질문시간을 위해 질문들도 준비하였다.

    모든 인터뷰 세션에는 끝나기 전에 질문시간이 있다. 이직 준비 초반에는 기가 다 빠져서 대충 넘어갔던 시간인데 몇번의 광탈 후 이시간이 정말 중요한 시간이라는 것을 깨닫고 질문 리스트를 많이 준비했다. 질문을 제대로 하면 내가 이 직책에 많은 열정과 관심이 있다는 것을 어필 할 수 있다.

     

    인터뷰어가 팀원일 때와 매니저일 때 했던 질문이 각각 다른데 팀원일 때는 이 팀에 있으면서 커리어적으로 배운 것, 회사에 대해 생각하는 단점, 지금 하고 있는 프로젝트와 업무 등에 대해 물어봤고 매니저일 때는 내가 맡게 될 일, 팀원에게 바라는 가장 중요한 것 3가지, 팀의 앞으로 5년 뒤를 위한 메인 목표 등에 대해 물어보았다. 

     

    시스템 디자인

    시니어 직책 부터는 시스템 디자인 인터뷰 세션이 있다고 하여서 준비 하였다. 실제로 경력이 시니어와 주니어의 경계에 있어서 두 종류의 직책을 모두 지원하였다. 마이크로소프트도 시니어와 주니어 포지션을 동시에 여러개 지원하였지만 연락온 직책이 주니어였고 그래서인지 이번 인터뷰에는 나오지 않았다. 그러나 알고리즘 인터뷰 중 프로젝트 경험에 대해 질문을 받고 대답할 때 인터뷰어가 High level technical structure에 대해 더 깊게 물어보았고 답변을 하는 과정에서 시스템 디자인에 대해 공부 한것이 도움이 많이 되었다. 실제로 전 회사에서 하던 일 중에 시스템 디자인에 대한 리뷰가 있었기에 설명하는 것이 어렵지는 않았다.

     

    시스템 디자인도 유튜브에 컨텐츠가 정말 많다. 보다보면 주제에 따라 조금씩 바뀌지만 큰 패턴이 있어서 커다란 아이템 별로 공부하면 될 것 같다. 

     

     

    총 준비는 4-5개월 정도 했고 그 동안 인터뷰를 본 회사는 15개정도 되는 것 같다. 그 중에는 FAMANG에 드는 큰 회사들도 있어서 다음 포스팅에는 그 경험에 대해 나누려 한다. 

     

    반응형
Designed by Tistory.