비전공자에서 2억받는 아마존 엔지니어가 되기까지
뉴욕 공대생 에드 님의 유튜브에서 본 내용을 정리
Last updated
뉴욕 공대생 에드 님의 유튜브에서 본 내용을 정리
Last updated
미국 대학 재학중 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문제까지 풀었을 때는, 이제 어느정도 문제를 보면 어떤 식으로 풀어야할지 알고리즘을 떠올릴 수 있었음
하루에 집중하는 작업에 쓸 수 있는 시간이 제한적이기 때문에 매일 꾸준하게 반복하는 것을 추천한다.
어느정도 자신이 생겼을 때부터 개발자 지원을 시작했다.
결과적으로는 세달 조금 넘게 공부했다.