求職丨我是如何成為了谷歌的軟件工程師
前谷歌軟件工程師YK Sugi分享了他是如何通過六個(gè)步驟,順利開啟了自己的數(shù)據(jù)科學(xué)職業(yè)生涯。
大家好,有很多人問我如何獲得谷歌的軟件工程師工作,在本文中我將分享我是怎么做的。
用相同的方法,你也可以在谷歌、亞馬遜、微軟、Facebook等頂尖科技公司獲得軟件工程師的工作。
在以上公司順利求職共需要6個(gè)步驟,此外我還將討論以下內(nèi)容:
- 首先該如何學(xué)習(xí)編程
- 學(xué)會(huì)編程后要學(xué)什么
- 如何獲得第一份編程工作或?qū)嵙?xí)機(jī)會(huì)
- 軟件工程師工作求職的最佳方式
- 如何充分準(zhǔn)備編程面試
- 是否要獲得計(jì)算機(jī)科學(xué)學(xué)位?
- 是否要畢業(yè)于頂尖大學(xué)?
好的,我們開始吧!
第1步:學(xué)習(xí)編程
這是成為軟件工程師所需的最低要求。
為此,我建議你使用Codecademy和freeCodeCamp等交互式網(wǎng)站。在這些網(wǎng)站上你可以學(xué)習(xí)大多數(shù)編程基礎(chǔ)知識(shí),SoloLearn也是不錯(cuò)的選擇。
之后,我會(huì)使用視頻教程來學(xué)習(xí)更深入的知識(shí)。我推薦YouTube,Pluralsight,Lynda.com和Udemy等網(wǎng)站。在這些網(wǎng)站上,你能夠找到以下主題的教程:
- Web開發(fā)
- 移動(dòng)開發(fā)
- 游戲開發(fā)
取決于你的興趣。
但是等一下,我應(yīng)該先學(xué)習(xí)哪種編程語言呢?
我的簡短回答是,選擇JavaScript或Python,但這實(shí)際上取決于你的興趣。我在之前的文章中有探討過這個(gè)問題。
第2步:做些個(gè)人項(xiàng)目
在學(xué)習(xí)了一些編程教程之后,你應(yīng)該通過構(gòu)建一些個(gè)人項(xiàng)目來練習(xí)學(xué)到的知識(shí)。
為此,你應(yīng)該找到你感興趣的東西。
例如,如果你喜歡攝影,那么你可以開發(fā)一個(gè)網(wǎng)站整理你所拍的照片。如果你對(duì)股票感興趣,那么可??以構(gòu)建一個(gè)系統(tǒng)來分析股票圖表。如果你喜歡解決問題,那么可以嘗試參加編程比賽。
當(dāng)處理項(xiàng)目時(shí),首先要盡可能靠自己完成。然后,如果遇到困難,可以使用在線或離線資源獲取其他人的幫助。例如,如果遇到與編程相關(guān)的問題,你可以在Stack Overflow對(duì)特定技術(shù)問題進(jìn)行提問。
第3步:獲得第一個(gè)編程工作或?qū)嵙?xí)
一旦完成了一些個(gè)人項(xiàng)目,你就有機(jī)會(huì)獲得第一份編程工作或?qū)嵙?xí)機(jī)會(huì)。這樣在與頂級(jí)科技公司面談之前,你將有一些編程的經(jīng)驗(yàn)。
你完全有可能在一家頂級(jí)科技公司獲得第一份工作,但是這種幾率比較小,你獲得的第一份工作更可能是在一家不那么知名的公司。
**申請(qǐng)軟件工程師工作的最佳方式**
除了在網(wǎng)上投簡歷,你還有其他的方法可以嘗試。
這里我建議你使用LinkedIn和人脈網(wǎng)絡(luò)。
在LinkedIn上,首先找到你感興趣的公司的招聘人員。然后,你可以問他們你是否有資格獲得你感興趣的職位。如果你的資格還不夠,你也應(yīng)該問他們?nèi)绾文芨玫刈鰷?zhǔn)備。
還有Meetup這種人脈網(wǎng)絡(luò)的網(wǎng)站,你可以直接與當(dāng)?shù)毓镜墓こ處熀驼衅溉藛T進(jìn)行交流。
這還不是全部。
LinkedIn這種人脈網(wǎng)站對(duì)于中小型公司的職位很適用。但是,對(duì)于想應(yīng)聘谷歌和Facebook等大型公司而言,效果就不那么好了。
對(duì)于這些大公司,我建議結(jié)合以下三種方法:
- 參加你附近大學(xué)舉辦招聘會(huì)。
- 通過在其中一家公司工作朋友的推薦。
- 網(wǎng)上投簡歷。
結(jié)合這些方法能夠增加你獲得大型公司面試的機(jī)會(huì)。
對(duì)于大型公司,LinkedIn上大公司招聘人員收到的消息太多了,因此效果不太好。
第4步:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法
谷歌和微軟等頂級(jí)科技公司在面試時(shí),經(jīng)常會(huì)問到關(guān)于數(shù)據(jù)結(jié)構(gòu)和算法的問題。所以,如果你對(duì)這方面不太了解,那么你應(yīng)該學(xué)習(xí)。
針對(duì)這方面的基礎(chǔ)知識(shí),我推薦我YouTube頻道的數(shù)據(jù)結(jié)構(gòu)和算法系列視頻。
書籍:
- 《算法設(shè)計(jì)手冊(cè)》 (The Algorithm Design Manual) 作者Skiena
- 《算法》Algorithms 作者 Robert Sedgewick
第5步:準(zhǔn)備編程面試
谷歌和微軟等公司的編程面試很難,但可以有針對(duì)性的進(jìn)行準(zhǔn)備。
一旦你對(duì)數(shù)據(jù)結(jié)構(gòu)和算法有了深入了解,我就會(huì)推薦以下三種資源用于練習(xí):
- Leetcode——練習(xí)編程面試問題的互動(dòng)平臺(tái)。
- 《搞定編程面試》(Cracking the Coding Interview)——關(guān)于編程面試的熱門書籍。
- 每日編程問題(Daily Coding Problem) ——每天給你提供一個(gè)編程問題的郵件列表。
在自己練習(xí)幾周之后,你可以開始進(jìn)行模擬面試。
**怎么做模擬面試**
與你的朋友一起練習(xí),從我以上提到的資源中選問題互相提問。
解答每個(gè)問題,并對(duì)你的解決方案進(jìn)行解釋。
在練習(xí)時(shí),除了面試者還要充當(dāng)面試官的角色,從而揣摩面試官的想法。
進(jìn)行約20次模擬面試,之后你對(duì)實(shí)際面試將有一定把握。
第6步:反復(fù)嘗試
使用我以上提到的三種方法應(yīng)聘頂級(jí)科技公司:
- 招聘活動(dòng)/招聘會(huì)
- 朋友推薦
- 網(wǎng)上求職
如果第一次沒有成功,請(qǐng)??不要泄氣。在找到心儀的工作前必然會(huì)經(jīng)歷一些失敗。
在我成為谷歌的軟件工程師之前,我曾嘗試了五次。
總結(jié):
- 第1步:學(xué)習(xí)編碼
- 第2步:做些個(gè)人項(xiàng)目
- 第3步:獲得第一個(gè)編程工作或?qū)嵙?xí)
- 第4步:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法
- 第5步:準(zhǔn)備編程面試
- 第6步:反復(fù)嘗試
等等,真的那么簡單嗎?
是的,但是完成這六個(gè)步驟需要大量的時(shí)間和精力。
其他問題
問題1:我需要獲得計(jì)算機(jī)科學(xué)學(xué)位嗎?
不用,但是擁有計(jì)算機(jī)科學(xué)學(xué)位有很大幫助。如果你參加一個(gè)完善的計(jì)算機(jī)科學(xué)課程,當(dāng)中包含了步驟1,2,3和4的大部分內(nèi)容(學(xué)習(xí)編程,做個(gè)人項(xiàng)目,獲得第一個(gè)編程工作或?qū)嵙?xí),以及學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)和算法)。
如果沒有計(jì)算機(jī)科學(xué)學(xué)位,你需要自學(xué)當(dāng)中許多內(nèi)容。
要注意,即使擁有CS學(xué)位,獲得頂級(jí)科技公司的軟件工程師工作也需要付出很多努力。
問題2:我是否需要畢業(yè)于麻省理工學(xué)院,斯坦福大學(xué),卡內(nèi)基梅隆大學(xué)等頂尖大學(xué)?
同樣,并不需要。畢業(yè)于頂尖大學(xué)當(dāng)然有些幫助,但這并不是必備條件。
谷歌人事業(yè)務(wù)部的高級(jí)副總裁Laszlo Bock也同意這一觀點(diǎn)。
在他的書《 Work Rules!》中提到,比起來自麻省理工學(xué)院等頂尖學(xué)校但表現(xiàn)平庸的學(xué)生,谷歌更青睞來自普通院校但表現(xiàn)優(yōu)異的學(xué)生。
我認(rèn)為這是有道理的,如果你很聰明且專注,那么來自哪所學(xué)校并不重要。
問題3:我需要很高的GPA(績點(diǎn))嗎?
不用。
較高的績點(diǎn)在面試中有一定優(yōu)勢(shì),但你擁有扎實(shí)的實(shí)踐經(jīng)驗(yàn),且完成了有趣的項(xiàng)目更為重要。
事實(shí)上,根據(jù)《 Work Rules!》,谷歌過去常常注重面試者的績點(diǎn)。然而之后他們發(fā)現(xiàn),較高的績點(diǎn)并不意味著出色的工作能力。因此谷歌不再強(qiáng)調(diào)面試者的績點(diǎn)。
問題4:那我需要什么?
你所需要的是強(qiáng)大的編程能力和解決問題的能力,熟練掌握計(jì)算機(jī)科學(xué)的基礎(chǔ)知識(shí),以及在簡歷中展示出完成的項(xiàng)目和具備的經(jīng)驗(yàn)。
根據(jù)我在文中提到的六個(gè)步驟,你就能做到。
問題5:怎么能寫一篇好的簡歷呢?
你可以參考我在面試谷歌時(shí)用的簡歷。
簡歷的篇幅最好控制在一頁,我的稍微有些長,但可以作為參考。
祝你好運(yùn)!
原文作者:YK Sugi
編譯:Mika, CDA 數(shù)據(jù)分析師
本文由 @Mika 翻譯發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
- 目前還沒評(píng)論,等你發(fā)揮!