這裏是《齊姐聊大廠》系列的第 11 篇node
(前 10 篇見文末)python
每週五早上 8 點,與你嘮嘮大廠的那些事git
小齊說:github
這篇文章來自去年一塊兒刷題跳槽的小當家大佬,大佬手握 N 個 offer,先是被西雅圖的清閒生活所打動,可去了卻沒想到...面試
被投行摧殘了接近兩年,去微軟折騰了快一年,最近終於入職 Google 了。算法
中間走了太多彎路,今天和你們分享下轉行總結,但願能夠幫助同在迷茫中的人。分佈式
本科是主修商科(Business Administration),自學了點數學,又輔修了數學精算。ide
後來決定轉碼實際上是由於看了一些培訓班的廣告,說平均工資能夠上 10 萬,我這輩子就喜歡錢,開始了毅然決然的轉碼之路。post
當初年少無知一心想作 data scientist,如今腸子都悔青了。DS 這行業是沒有明肯定義的,有的公司要求 SQL,有的用 spark,以前面了一堆公司沒遇到幾個實際是作 ML 的,就算是作 ML 的也可能是用 SageMaker,etc. 加上各大廠的 autoML platform,不看非名校 master 如下學歷的人。固然也有例外,在微軟遇到過一個哥大剛畢業的小妹妹去了 ML 組作的還真是 ML 相關的,不過這種職位真的是少。學習
SDE 相對來講容易不少,首先不像 DS 的玄學面試,SDE 面試範圍很是窄,不會超出算法,OOD,system design,threading,networking 的範圍。
而後多找大佬聊聊,基本市場的信息每一個羣都會聊到。
多加些 recruiter,個人 LinkedIn 首頁常常會有 recruiter 發出各類 job posting,下面 reach out 和回覆的 9 成是印度小哥。
關於 project,我的試過 udacity,udemy,比較推薦 udemy,主要是便宜,10 刀一節課,我買了各類 big data,Java Spring,Hadopp,Tensorflow,ML,fullstack 等等。選兩門課跟着作幾個 projects 放到簡歷上基本只要 1 個月。100 刀以內基本搞定,我買了 700 刀的課程到今天也只看了 100 刀的。。
最後就是面試準備。Entry level 基本就是算法,入門基本選擇基本就是 Leetcode。
Stanford 的 106B/X 基本上 cover 了 data structure 的基礎,尤爲是 exhaustive search,Marty 講的好的真是無語了,腦殘粉。
看完 Stanford 的 106B/X 能夠看 Stanford Algorithms:
或者 Princeton 大爺爺的 algorithms 課,那個是 Java 的。
Tim 的課都是 Pseudo code,喜歡數學證實的人推薦。
上面的視頻看完基本上 leetcode 的基礎基本都有了, 能夠開始刷題了。
刷題能夠推薦 2 個 channel:
殘酷羣羣主親嘴授課,徹底免費,每日一題,跟着刷堅持一年確定有 offer。
花花醬完美 ppt 講算法,超過賈躍亭班的存在。
System Design 的話這個好像都知道,DDIA,grokking,MIT distributed system,就很少說了。
入職以前據說微軟是養老公司,以前有個大表哥來了之後說天天沒事幹,幹啥都沒動力。
哎,這不就是個人夢想嗎,拿錢不用幹活,帶薪刷題。
打進來之後發現原來是看組的。
微軟社招流程和大部分公司同樣,面試的時候的組基本上就是入職之後的組,筆者入職的是 Identity。
Identity 是身份認證組,cloud 的第一層通常都是 identity
3 月末入的職,全副武裝從紐約飛到了西雅圖,而後入職的下一週就開始在家工做了。。
入職之後老闆會安排一個 onboarding buddy。第一週去了辦公室 2-3 次把電腦設置好,而後就和老朋友們線上多人運動,刷題。
想着畢竟是養老公司,確定沒多少活啊;沒想到,第 2 周開始就安排活了。
老闆把 Micro management 發揮到了極致, 1on1 的時候會問天天作了什麼,精確到小時。第三週已經接到 4 個任務,組裏都是來了不到 1 年的,什麼問題都要本身搞懂,加上文檔不全,基本天天要幹 12 小時才能不被老闆說。
作事滿了老闆會直接批評,像極了小學老師。不過好在全組人都這樣,我不是孤單一人。
正在我糾結爲啥工做強度這麼大,作的東西如此無聊的,大夥還能堅持的時候,組裏小哥傳來消息,換組了。
這個組加我和老闆一共 7 我的,我和一個印度小夥是新來的,小黑哥 8 個月,其餘三個華人分別是 4,10,12 個月。老闆 2 年。
小黑哥走了以前,咱們聊了許久,說到底小哥受不了老闆打壓了,總的來看小哥一人之力建了組裏全部 spark job,scala 賊溜,C#也能寫,天天工做 12 小時,來了 8 個月業務嫺熟, 結果 review 是通常。
抱着升職夢想慘遭如此命運,小哥毅然決然的走了,傷自尊了。此時,新來的印度小哥也來問,怎麼換組,雖然小哥本身和老闆都是印度人,身爲 abi 的小哥時而聽不懂老闆說話。
abi: american born indian
在美國出生的印度人
最終就在小黑哥走以前的一週,傳來了驚天喜訊,老闆被炒了!
原來這個組一年前的 5 個員工不是如今這批,小黑哥一走 turnover rate 就是 100%。一年員工全跑了致使老闆被炒。
但我當時已經開始面其餘組了,面着面着發現好組那麼多,我爲啥要在一個 Ops 比寫代碼多的組耗着,2 周面了 40 多個組之後,從 6 個願意要個人組裏選了個忙但能學到東西的, 屬於 Azure 核心組之一。
Azure: 微軟的雲計算
走了之後仍是和小黑哥和小印哥保持聯繫,沒跳出來的還在騷動,跳出來的有恃無恐。
微軟換組很是簡單, 去公司內部的 career 網站發郵件就行了。第一次發了 30 多封郵件試水,結果 2 天以內接近 6-7 個組回覆,有的新組人太少就沒有進行第二輪。最後一共大概發了 60 封郵件。
實際上面試的組有 15 個左右。5 個左右的組我比較嫌棄就拒了。
10 個組有 1 個組一輪拒了我,國人阿姨以爲我經驗不夠,她們組用 rust 作 IoT。其實挺想去看看的。。
其餘 9 個組都是先和 manager 聊,而後 3 輪算法面試,最後再和 skip manager 聊。
IoT: internet of things,物聯網。
屬於比較先進的組,作一些無人車什麼的。
算法面試基本就是 medium 級別的算法,我能想起來的好比 combination, gcd 相關的,兩個 linkedlist 找交點,tree 有兩個 node,找到 k distance 的 node,LCS 變形,map reduce count word,bit mask,clone graph,etc。
總結就是內部轉面試相對容易太多, 多申請幾個容易遇到真愛。
7 月入職的新組,這個組負責分佈式系統的底層,就是傳說中 DDIA 的第三章講的東西,replication,cluster,parition,LSM/B Tree。
組裏華人印度人 2:8,每一個人都是超級好。 第 3 天接到第一個任務,老闆解釋任務簡潔明瞭,entry point,咱們想幹啥,啥啥不會找某某。
每一個人都有對應的項目,基本不會遇到給個任務全組沒人懂的狀況。
組裏用的是 C++,身爲 python 也不會太吃力。不過剛入職仍是天天工做十幾個小時,但不會有找不到方向的焦慮,一個月學到的東西比前一個組 3 個月學得多,還有用,組員人還好,唉。
谷歌的 offer 實際上是和微軟一塊兒拿的,可是谷歌須要 team match,加上個人 HR 不給力,以及這半年受疫情影響 google hiring freeze,因此 match 了 7 個月,match 上我就跑了,惋惜了我這微軟最最最核心的組,慚愧慚愧。
若是你喜歡這篇文章,歡迎分享給你身邊的朋友,也給齊姐點個「在看」,大家的支持是我最大的動力!
更多幹貨文章見個人 Github: https://github.com/xiaoqi6666...
我是小齊,紐約程序媛,終身學習者,每晚 9 點,自習室裏咱們不見不散 ❤️