비전공자에서 2억받는 아마존 엔지니어가 되기까지

뉴욕 공대생 에드 님의 유튜브에서 본 내용을 정리

이력

  • 미국 대학 재학중 3학년때부터 개발공부 시작

  • 4학년 여름, 다른 친구들 인턴 구할 때, 도저히 구할 방법이 없었음. 우연히 전공 교수님의 연구에 리서치 알바를 겟!

    • 리서치 일을 하면서 교수님 AI 연구도 간접적으로 참여하고, 관련 석사생들하고도 교류할 수 있었음

  • 4학년 2학기때, 실무 경험이 없는 상태로 첫 인턴을 구해야하는 상황. 대기업은 못가니까, 스타트업 위주로 지원 시작.

    • 엔젤리스트라는 사이트(스타트업계의 링크드인)에서 3-40 곳을 지원했지만, 다 여건이 안좋은 회사이거나 성장가능성이 별로 없는 곳.

    • 현재 나의 기술스택(파이썬)과 맞는 회사에 들어가 첫번째 개발자로 일을 시작.

  • 다니던 스타트업 인턴은 사실 너무 박봉에 일도 많았음. 다른 스타트업을 가기로 결심함

  • 다른 곳에서의 스타트업 정규직 생활을 시작함

    • 일이 너무 많고 고용 안정성도 위협받아서 결국 이직 준비를 위한 코딩테스트 공부 시작

  • 직장을 병행하며 3달동안 200문제를 풀겠다는 것을 목표로 준비하고, 결국 아마존 이직 성공

공부과정

  • 시작

    • html, css 등을 자세히 공부하며 개발을 시작함.

      • 지금 생각하면 이 방법을 비추천. 마크업을 그정도로 자세하고 깊게 알지 않아도 된다고 생각함

    • 두꺼운 책을 한 권 사서 끝내겠다는 식은 비추천. 지루하다.

    • 책에서 배운 내용을 기반으로 빙고 게임 같은 프로그램을 만들어서 배운 내용을 적용했다.

  • 기초

    • 본격적으로 개발을 배울 때에는 파이썬을 주 언어로 정하고 코드 아카데미 사이트에서 하나씩 따라서 치면서 배웠다.

  • 온라인 강의

    • 여러 부트캠프, 유료 강의를 찾아보다가 그냥 유튜브로 배우기로 함

    • MIT 강의 - 세계 최고의 강의, 과제, 자료 등 풍부하다.

    • 공부하기 편하고 수월했음

    • 영어만 지원하나 한국어 번역본도 몇몇 있다.

스타트업에서 대기업으로

  • 왜 이직 결심?

    • 스타트업은 일이 너무 많음

      • 20명 정도였는데, 매일 시간 단위로 쪼개서 보고해야했음

      • 프로젝트 늦어지면, 주말 출근 강요

    • 회사 사람들 순식간에 짤린다.

      • 2-3달마다 한명씩 짤린다.

      • 출근한 당일에 너 짤렸다고 통보.

  • 이직 위해서 코테 공부를 시작했다.

  • 다른 사람들의 이직 성공담을 많이 찾아봤다.

나보다 먼저 코딩 공부하고 인터뷰 성공한 사람들의 이야기를 많이 들었다.

  • 남의 경험담 중요한 이유

    • 희망을 얻을 수 있다. 비전공, 개발경험 없지만 원하는 기업에 취업 성공했다는 일대기를 많이 볼 수 있다.

    • 면접 과정에 대한 이해를 할 수 있다. 어떻게 진행되는지 알아야 그것에 대해 준비할 수 잇다.

      • 코테 도중에 문제 어떻게 풀지 먼저 면접관에게 설명하고, 이렇게 풀어도 되겠니? 물어보고 코딩 시작하는 것

      • 몇달 공부, 서적, 몇문제, 어디 웹사이트 등 정보 얻기

  • 코딩테스트 준비하기

    • 코딩 언어는 무조건 파이썬으로 선택

    • 200문제를 3달안에 풀자고 목표를 잡음

    • 1시간 안에 2-3문제 - 20분에 한 문제 - 10분 고민 + 10분 코딩

    • 문제를 보고 5분만 본다. 어떻게 풀어야겠다고 생각이 바로 나면 코딩 시작, 아니면 바로 답지를 봤다.

    • 처음 접하는 데이터 구조는 무조건 답안을 먼저 봤고, 어느정도 알고리즘이나 데이터 구조에 익숙해지면, ㅇ코딩 웹사이트로 이동하여 문제 풀었다.

    • 매일 출근 지하철로 2-30분 - 알고리즘 문제를 보고 답안 코드를 읽는 방식으로 공부

      • 집에서는 직접 풀어보는 연습

    • 아무 문제나 풀지 않는다. 웹사이트에서 순위가 높은 문제 위주로 푼다.

    • 실전 느낌으로 풀 때는 면접관에게 실제 말하고, 어떻게 풀겠다는 식으로 설명하는 연습을 했다.

    • 자다가 일어나도 풀 수 있을 정도의 반복 연습이 중요

    • 어떤 순서로 말해야할지도 미리 템플릿화 했고, 화이트보드에 적으면서 설명하는 것도 연습했다.

  • 모의 면접

    • pramp : 코딩 면접을 준비하는 분들이랑 모의로 면접 진행

      • 2명이 매칭되면, 한명은 면접관이 되고 한명이 지원자가 되어 답변을 한다.

      • 30분이 지나면 역할 교체

      • 10번정도 연습했다.

      • 모르는 사람이나 모르는 문제에 대한 것도 익숙해짐

    • 200문제 풀기로 결심하고 120문제까지 풀었을 때는, 이제 어느정도 문제를 보면 어떤 식으로 풀어야할지 알고리즘을 떠올릴 수 있었음

  • 하루에 집중하는 작업에 쓸 수 있는 시간이 제한적이기 때문에 매일 꾸준하게 반복하는 것을 추천한다.

  • 어느정도 자신이 생겼을 때부터 개발자 지원을 시작했다.

  • 결과적으로는 세달 조금 넘게 공부했다.

Last updated