뒤늦게 쓰는 미국 tech 회사 개발자 취업기
2022년은 내 인생 전체에서 가장 임팩트가 있었던 한해가 아닐까 싶다. 막연히 미국에서 개발자를 해보고 싶다는 생각에서 유학을 결정했지만 컴퓨터공학 전공자도 아니고 한국에서 개발 경력도 없는 외국인을 미국 tech 회사에서 뽑아줄까라는 의문을 석사과정 내내 가지고 있었기에, 오퍼레터를 받은 7월 20일은 어떠한 단어로도 설명할 수 없는 감정을 느꼈다. 취업한 지 4개월이 넘은 시점이지만 지난해 4월부터 7월까지의 롤러코스터 같은 감정을 떠올리며 글을 써본다.
2022년 1~4월, full-time position 지원과 코딩테스트 준비
1월, 석사 과정 마지막 쿼터에 접어들면서 본격적으로 full-time position에 지원을 시작했고 동시에 코딩테스트에 최대한의 시간을 할애했다. 일반적으로 미국에서는 코딩테스트 준비를 위해 LeetCode라는 사이트를 활용하는데 해당 사이트의 문제점은 해설이 없거나 있어도 친절하지 않다는 것이었다. 그러다보니 막히는 문제는 YouTube에서 종종 검색해서 유투버들의 해설을 듣곤 했는데 NeetCode라는 유투버를 알게 되었고, 이 친구가 제공하는 Blind 75 문제를 거의 외우다시피 연습을 했다.(NeetCode란 유투버는 당시에는 unemployed 였으나 결국 Google에 입사했다. )
2022년 5월, 첫 인터뷰 기회가 찾아오다.
2022년은 유난히 날씨가 좋지 않았다. 보통은 3월이면 겨울 우기가 끝나고 화창한 날씨가 9월까지 지속되는데, 2022년은 벚꽃이 피는 5월말에도 갑자기 추워지고 비가 세차게 내렸다. 나는 거의 매일 주로 약학과 수업이 열리는 South Campus Center로 가서 아침에 한자리 확보한 후 하루종일 졸업 프로젝트와 LeetCode 연습을 반복했다. 6월 졸업이 다가오면서 마음도 급해지고 유학자금도 다 떨어져서 혼자서 끙끙앓고 있던 와중 회사 두곳으로부터 면접을 보자는 연락이 왔다. 두 회사 모두 finance 관련 회사였는데 아마도 나의 과거 이력 때문에 면접기회가 오지 않았나 싶다. 특히 두회사 중 한 곳은 미래에셋에서 근무할 때 자주 사용했던 data platform이었고 과거 경력도 살릴 수 있다는 장점 때문에 입사하고 싶은 생각이 강했다. 하지만 아쉽게도 해당 회사는 3차 코딩인터뷰에서 떨어졌다. 이 회사의 코딩 인터뷰 방식이 일반적인 형태는 아니었기도 했거니와 나 스스로 인터뷰 경험이 너무 없어서 과도하게 긴장했고, 결국 주어진 시간 안에 코드를 완성하지 못했다. 코드 완성도도 문제였지만 interviewer랑 interaction도 없었던 것이 패인이었던 것 같다.
또 다른 한 회사는 2차 면접 전 recession으로 인한 hiring process를 중지한다는 통보를 받았다.(2022년 4월부터 크고 작은 회사들이 인원 감축 혹은 채용 축소를 단행하기 시작했다.) 주변 친구들 말로는 100여군데 지원하면 보통 3~4 곳에서 면접 기회가 찾아온다고 하니, 약 50여곳의 포지션에 지원해서 2번의 면접 기회가 주어진 것은 나쁜 수치는 아니었다. 그렇지만 졸업 후 5개월 안에 취업이 안되면 미국을 떠나야 한다는 외국인 제약조건 때문에 내 마음은 점점 조급해지기만 했다. 코딩테스트는 약간 손에 익는 듯 싶다가도 어려운 문제를 만나면 여전히 실마리 조차 보이지 않고 머리는 멍해졌다.
졸업, 그리고 다시 찾아온 기회
결국 졸업 전에 취업이란 희망은 사라지고 졸업식이 있던 6월 4일은 친구들과 사진만 찍고 다시 집으로 돌아와 코딩테스트를 준비했다. 졸업식 당일에는 마음이 무거웠지만 졸업 이후에는 오히려 마음이 가벼워졌다.이제 신경 쓸 학교 공부도 없고 24시간 전부 면접 준비에 쏟을 수 있었고, 오르지 못할 벽 같았던 코딩테스트도 몇개월 연습하니 조금씩 익숙해졌고 자신감도 조금씩 붙기 시작했다.
6월 중순이 되자 AWS와 Splunk라는 회사에서 면접 요청이 들어왔고 면접 프로세스가 동시에 진행되었다. AWS는 Cloud Support Engineer 포지션에 대한 면접이었는데 아마존은 면접 보기 전 면접 범위를 대략적으로 알려준다. 즉, 1차면접을 잘 보면 2차면접에서 대략적으로 어떤 질문을 할지 힌트를 준다. 물론 면접 예상 질문의 범위가 워낙 다양하고 방대하기 때문에 짧은 시간에 완벽하게 준비할 수는 없으나 약간의 힌트만으로도 다음 면접 준비에 있어 많은 도움이 되었다.
각 한시간 가량의 1, 2차 면접이 끝나고 약 일주일 후 마지막 3차 면접이 진행되었는데 무려 4시간 짜리였다. 그중 두시간은 technical question 위주고 나머지 두시간은 Amazon Leadership Principles로 불리는 behavioral question 위주였는데 behavioral question은 준비를 열심히 했음에도 질문이 10개가 넘어가자 대답할 리소스가 사라졌다. 몇몇 답변은 기존에 이미 공유한 예시를 쓰되 다른 방향의 시사점을 제시해서 적당히 넘겼던 것 같다. Technical question은 제법 대답을 잘 한 것 같아서 최종 면접이 끝나고 이정도면 좋은 결과를 기대해도 좋겠다는 생각이 들었다.
Splunk 면접은 첫 코딩테스트 때 interviewer가 원하는 data structure를 적용하지 않아 망했다고 생각했는데 다행이 1~2주 후 다음 면접 일정 메일이 왔고 이후 코딩테스트는 제법 수월하게 지나갔던 것 같다. Splunk는 traffic engineering 팀의 early career engineer를 뽑고 있었는데 면접 과정에서 internet traffic 관련한 기초 상식(예를 들자면, www.google.com을 입력했을 때 어떤 일이 일어나는지 설명하시오 혹은 tcp와 udp의 차이)에 대한 질문이 나왔는데 다행이 AWS의 면접 질문과 겹치는 부분이 많아서 쉽게 대답할 수 있었던 것 같다.
좋은 소식은 급작스럽게 그리고 동시에
어김없이 학교 도서관에서 코딩테스트 준비를 하고 있던 7월의 어느날, 정말 2년 내내 고대하던 full-time position offer 메일이 내 메일함에 도착했고, 심지어 그날은 Google에서도 인터뷰 요청이 들어왔다. 최종적으로 AWS와 Splunk 두회사 모두로부터 오퍼를 받았고 Splunk에서 매우 후한 compensation과 비자 서포트를 제시해서 Google 인터뷰는 취소하고 Splunk로 가기로 결정했다.
Splunk offer letter에 사인하던 날에는 정말 지난 3년간 정신적으로 힘들었던 시간들이 계속 생각나는데 동시에 너무 기뻐서, 눈에서는 눈물이 나는데 올라간 입꼬리는 내려올 줄 몰랐다. 그날의 복잡한 기분은 정말 말로 표현하기 힘들 것 같다. 2019년 7월 부트캠프를 통해 처음 프로그래밍에 대한 흥미를 느끼고 커리어를 바꾸기까지 약 3년이 걸렸다. 새로운 지역과 공간에서 원하는 커리어를 시작할 수 있는 기회를 잡은 2022년 여름은 평생 잊기 힘들 것 같다.