非名校出身的他,是如何拿到 Facebook 等5家頂尖科技公司的Offer?

1 評論 9367 瀏覽 33 收藏 35 分鐘

這篇文章是專門為那些即將開始找工作的人寫的。很多正在找工作的人可能會擔(dān)心因?yàn)樽约翰皇钱厴I(yè)于常青藤名校而無法在頂尖科技公司找到一份理想的工作。還有可能其他人會告訴你說因?yàn)槟悴粔騼?yōu)秀而無法在微軟或Facebook找到一份工作。但是我想告訴你的是,即使你不是出身名校,你依然可以在全球頂尖的科技公司找到一份你理想中的工作。下面我分享一下我是如何找到我夢寐以求的工作的。

這篇文章將主要包含以下幾部分內(nèi)容:

(1)我的個人背景。

(2)我是如何獲得眾多全球頂尖科技公司的面試機(jī)會的,這些公司包括Facebook、Amazon、LinkedIn、微軟、Twitter、Pinterest、Snapchat和其他公司。

(3)我是如何拿到幾家頂尖科技公司的軟件工程師職位的Offer的。

(4)我從面試經(jīng)歷中學(xué)到的經(jīng)驗(yàn)。

我的個人背景

我并非畢業(yè)于常青藤名校(常青藤聯(lián)盟成員包括哈佛大學(xué)、耶魯大學(xué)、賓夕法尼亞大學(xué)、普林斯頓大學(xué)、哥倫比亞大學(xué)、布朗大學(xué)、達(dá)特茅斯學(xué)院、康奈爾大學(xué))。我在愛達(dá)荷州的一所社區(qū)大學(xué)讀了兩年書,然后在一所小型天主教大學(xué)拿到了計算機(jī)科學(xué)學(xué)位。

我是在大三的時候就開始學(xué)習(xí)計算機(jī)科學(xué)的,因?yàn)楫?dāng)時我覺得這門學(xué)科聽起來非常有趣。在我成長的過程中,我擁有的的唯一一件類似電腦的產(chǎn)品就是超級任天堂的中國山寨版。甚至在當(dāng)時,每次我放一盤磁帶進(jìn)去的時候,它都會崩潰。

為了在大學(xué)期間能夠自力更生養(yǎng)活自己,我做了很多份的兼職。當(dāng)我畢業(yè)的時候,我并沒能很快就找到一份工作。我申請了盡可能多的大型科技公司的職位,并有幸獲得了幾次電話面試的機(jī)會。

當(dāng)時我對technical screen電話面試沒有任何概念,所以也就不知道該如何為這種面試做準(zhǔn)備。我參加這些面試之前想當(dāng)然地認(rèn)為面試官可能會問我鏈表或者二叉樹是什么這類面試問題。

在參加的所有幾個電話面試中,我都沒有通過。

勇往直前

我沒有過多地探究自己是否優(yōu)秀。我知道我的學(xué)習(xí)能力非常強(qiáng)。我需要的只是一個機(jī)會。正如大家所說的那樣,要廣撒網(wǎng)。而這正是我做的。

我接下來做了一件讓我特別引以為傲的事情。我寫了一個簡單的Python腳本,它在Craigslist上抓取了一些含有一些關(guān)鍵字的職位列表,并在電子表格中收集這些職位的電子郵件聯(lián)系方式。這并不是最聰明的解決辦法,但在Craigslist上發(fā)帖的人對他們所要招聘職位的描述出奇地準(zhǔn)確。然而,Craigslist并不喜歡人們抓取他們網(wǎng)站上的內(nèi)容。為了解決這個問題,我通過一個VPN運(yùn)行我的腳本,并有一個計時器,每隔幾分鐘就會暫停腳本。雖然它兵不完美,但卻運(yùn)行得很好。最后,我搜集了來自舊金山、波特蘭、斯波坎和西雅圖的公司的大約500封招聘電子郵件。我根據(jù)這些職位的具體發(fā)布時間和其它信息對結(jié)果進(jìn)行了過濾,并通過添加越來越多的特性來改進(jìn)它。后來我發(fā)現(xiàn)已經(jīng)有一些機(jī)器人在爬Craigslist上的信息并發(fā)送自動電子郵件。這些公司大多是海外公司,它們希望將自己的公司推銷給美國市場。

我采用的一個變通方法是,我精心制作了電子郵件,我在郵件標(biāo)題里使用了那些公司發(fā)布的招聘信息里的一些關(guān)鍵詞。然后,我在郵件正文部分添加了更多的細(xì)節(jié)信息,讓郵件內(nèi)容看起來更個性化。我做了一個快速的A/B測試,就這樣,我收到的應(yīng)聘公司的回復(fù)率從2-3%增加到了10%。

在發(fā)送的大約500封應(yīng)聘電子郵件中,我收到了大約50份回復(fù),其中一小部分給了我電話面試的機(jī)會。我之所以只發(fā)500封電子郵件,這是因?yàn)槲視r間不夠,需要盡快找到一份工作。我會盡可能提高面試通過率,而不是獲得盡可能多的面試機(jī)會。

幸運(yùn)的是,我最終在西雅圖的一家創(chuàng)業(yè)公司找到了一份初級軟件工程師的工作。這家創(chuàng)業(yè)公司當(dāng)時位于Kirkland,所以我必須坐45分鐘的巴士才能趕上面試的時間。

在接下來的3年半的時間里,我一直在這家公司工作。我在那里學(xué)到了很多東西,比如亞馬遜AWS、EC2、DynamoDB、SQS和Docker。我在這段時間里成長了很多。我學(xué)習(xí)了如何編寫模塊化的、可維護(hù)的代碼,我學(xué)會了如何對軟件設(shè)計進(jìn)行推理,我也學(xué)會了如何處理人事方面的問題。

我周圍全是一群聰明的人,他們有的在微軟工作,有的在Amazon工作,有的在LinkedIn工作,我努力成為這群人中的一塊“海綿”,我盡可能多地從他們身上進(jìn)行學(xué)習(xí),這對我的職業(yè)生涯產(chǎn)生了非常巨大的影響。

在創(chuàng)業(yè)公司工作的日子

我在加入的第一家創(chuàng)業(yè)公司工作期間,我做的幾乎全部都是后臺開發(fā)方面的工作,中間會涉及一些開發(fā)運(yùn)維。我開始編寫一些函數(shù)來添加或修改一個影響范圍很小的特性,不過這是一個了解代碼庫并進(jìn)行一些代碼審查的好機(jī)會。一年之后,我開始負(fù)責(zé)代碼庫的一部分,然后我的任務(wù)是將一組特性轉(zhuǎn)換為服務(wù)。這是這家創(chuàng)業(yè)公司SOA階段的開始。我們開始將站點(diǎn)的各種組件轉(zhuǎn)換為服務(wù),我就是在這個過程中學(xué)習(xí)更多有關(guān)RESTful服務(wù)、身份驗(yàn)證、AWS服務(wù)、發(fā)布-訂閱、分布式系統(tǒng)等方面的知識的。

有趣的是,我并不是通過書本或正規(guī)的教育來學(xué)習(xí)這些知識的。相反,是因?yàn)槲以趯?shí)際工作中需要開發(fā)完成一系列功能部件,但我在這方面存在知識瓶頸。所以我想,那就邊學(xué)邊做吧。很多時候,我都陷入了分析癱瘓狀態(tài),在這種狀態(tài)下,我過度分析了各種情形場景,最終無法取得進(jìn)展。

那些艱難的時刻其實(shí)是最好的學(xué)習(xí)機(jī)會。我開始學(xué)習(xí)功能范圍、監(jiān)視、警報和文檔方面的知識。這個過程的每一步都揭示出我需要學(xué)習(xí)更多的東西。在過去的2-3年時間里,我成長地最快,無論是作為一個個人還是作為軟件工程師都是如此。

我是如何準(zhǔn)備面試的?

在經(jīng)歷了第一次求職面試中的各種艱難曲折后,我告訴自己,在未來的求職面試中我必須做好充足地準(zhǔn)備。

我開始通過對我擅長的、不擅長的以及我可以改進(jìn)的地方進(jìn)行概述,從而為未來的面試做好充分準(zhǔn)備。我將它分為三個類別:數(shù)據(jù)結(jié)構(gòu)、算法和系統(tǒng)設(shè)計

我在自己的正式職業(yè)生涯中基本都是在PHP領(lǐng)域工作,在大學(xué)里也學(xué)過C++,所以我想嘗試一些更簡單、更不繁瑣的面試。因?yàn)檫@個原因,我選擇了Python。這是一門用來學(xué)習(xí)的非常好的語言,它很容易學(xué)習(xí),支持許多開箱即用的數(shù)據(jù)結(jié)構(gòu),并且可以在白板上快速書寫。我是通過Youtube上的一些視頻教程學(xué)習(xí)Python的,并閱讀了教學(xué)文檔。另外,我選擇學(xué)習(xí)Python的另一個原因是,它具有很高的可讀性,而且在白板上書寫很容易。這是C++和Python之間的一個簡單的比較:

下面是用C++語言寫的降序排序:

非名校出身的我,是如何拿到Facebook、谷歌、微軟、亞馬遜和Twitter的Offer的?

下面是用Python寫的版本:

非名校出身的我,是如何拿到Facebook、谷歌、微軟、亞馬遜和Twitter的Offer的?

我積累的經(jīng)驗(yàn)的是,很多應(yīng)聘者在面試過程中會在簡潔方面犯錯。在45分鐘的面試中,你需要用大部分的時間來解決實(shí)際問題。

黃金小建議:選擇一種不那么冗長的語言,這樣你就可以在白板上更快地寫代碼了。

面試準(zhǔn)備模式

我花了大約一個星期的時間在LeetCode、HackerRank和Project Euler中做了一些簡單的測試挑戰(zhàn),以便熟悉它們的接口,并讓自己開始習(xí)慣用Python編寫代碼。

第一周我了解了我在某些編程語言方面的能力水平。我又花了一周時間來進(jìn)行一些設(shè)計上的挑戰(zhàn),并盡可能做到深入和廣泛。

這對我來說是非常有趣的,因?yàn)槲医?jīng)常查看iOS應(yīng)用,并試圖弄清楚它們是如何做到的。例如,你如何從頭開始重新開發(fā)Instagram?(我在Facebook面試時曾被問到這個問題)。我的專業(yè)背景是API設(shè)計和服務(wù)導(dǎo)向式架構(gòu)。因此,我借此機(jī)會展示了我將如何設(shè)計我自己的Instagram版本。因?yàn)槲以谝恍I(yè)余項目中積累了一點(diǎn)iOS應(yīng)用編程經(jīng)驗(yàn),所以我在回答這個面試問題時可以稍微講一下回調(diào)函數(shù)等方面的內(nèi)容。我一開始講的是我想在我自己的Instagram版本中加入的一些功能:贊、上傳照片和簡單的時間線。功能范圍使我能夠構(gòu)建一個非??煽康腁PI,因?yàn)槲曳浅A私膺@些場景。然后我畫了一些概要設(shè)計圖片,介紹了客戶端機(jī)如何與后端交互,以及后端如何存儲數(shù)據(jù)。

我從小處著手,然后在需要的地方添加更多的組件,并主動尋找瓶頸所在。我做了一些有根據(jù)的猜測(而非盲目的猜測),以及每一項技術(shù)是如何融入進(jìn)去的的。同樣重要的是,什么技術(shù)無法很好地融合進(jìn)去。例如,為什么要使用Cassandra而非MySQL來存儲某些信息,為什么要使用OAuth而不是通過簡單的認(rèn)證,是使用Cassandra還是Memcached來緩存數(shù)據(jù),是使用流媒體還是批處理處理等等。

在這里,你需要探索的領(lǐng)域還有很多。因此僅僅通過一個小時的溝通是不夠的。為了能夠更好地回答這類面試問題,你必須閱讀并學(xué)會權(quán)衡取舍。一個行業(yè)的技術(shù)優(yōu)勢和劣勢是什么。為此,我推薦一個網(wǎng)站:HighScalability。

回答這類面試問題時,要做到就像和同事進(jìn)行一次典型的頭腦風(fēng)暴一樣,做盡可能廣泛和深入地探索。你要知道,這些設(shè)計面試的目的是要了解你的知識面有多廣,以及你了解的有多深入,這是一個讓你脫穎而出的機(jī)會,這一點(diǎn)很重要。我在Youtube上看了一段關(guān)于如何解決設(shè)計問題的視頻,它給了我深刻的洞察力,為我在回答設(shè)計類面試題中提供了巨大的幫助。我從中學(xué)到的兩個主要經(jīng)驗(yàn)是:推動設(shè)計對話、展示你所知道的。

我列出了自己在下面這些領(lǐng)域里的能力水平:數(shù)據(jù)結(jié)構(gòu)(鏈表、散列映射、二進(jìn)制樹、二進(jìn)制搜索樹、堆、數(shù)組)、算法(二進(jìn)制搜索、哈希、動態(tài)規(guī)劃、排序)和特定語言的語法和庫(例如,Python的lambda、附加和索引)

我選擇了我最不擅長的領(lǐng)域,并開始研究它:算法。算法從來都不是我的強(qiáng)項。我大學(xué)畢業(yè)已經(jīng)有一段時間了,在我的日常職業(yè)生涯中,我沒有花太多時間在二進(jìn)位搜索上。我對每個算法的運(yùn)行原理在使用場景一個初步的了解,但我無法在10分鐘內(nèi)寫出二分查找程序,不管是在白板上還是在面試官面前都是如此。

我買了一堆精美的細(xì)馬克筆,效果非常好。但在面試室里的馬克筆通常都不好用,我通常在面試室里會花2-3分鐘找一支能用的筆,而這2-3分鐘是你浪費(fèi)不起的。另外,細(xì)馬克筆允許你在一個典型的白板上寫5-8行代碼。

黃金小建議:自己準(zhǔn)備一盒馬克筆。

我從Costco花了50美元買了一塊白板,從亞馬遜買了一些相關(guān)書籍,然后開始了我的編程實(shí)踐。我確保我在二分查找、遞歸、動態(tài)規(guī)劃、BFS和DFS上做了專門的提升練習(xí)。很多的面試問題都是圍繞遞歸和二分查找展開的。我所見過的最好的面試問題是那些有很多不同解決方案的面試問題。

在參加Google的面試中,我曾被問到一個與文件系統(tǒng)目錄有關(guān)的問題,以及如何遍歷這些目錄(提示:遞歸)。我很快就解決了這個問題,然后面試官問了如何在那個目錄中找出一個丟失的文件。這個問題相對更難一點(diǎn),但是我還是解決了。然后我們討論了如何重建目錄,如何對它進(jìn)行序列化和反序列化,我們花了大量的時間討論文件目錄在底層是如何運(yùn)行的。對我來說,這是一次非常愉快的面試。

參加頂尖科技公司的面試

可以這么說,參加這類面試是一次令人神經(jīng)崩潰的經(jīng)歷,給人的感覺如同做過山車。

我是根據(jù)下面這個方式來分配我的時間的:20%的時間用于簡歷制作,20%的時間用于調(diào)查研究,60%的時間用于面試準(zhǔn)備。

我將自己20%的時間都用在整理自己的簡歷上了,而我的簡歷至少有三年時間都沒有更新過了。我仔細(xì)研究了我過去做過的所有事情,并選擇了一些我從頭負(fù)責(zé)到底至的項目,不用考慮項目的復(fù)雜性如何。

我之所以會這么做,主要有兩個方面的原因。從頭到尾負(fù)責(zé)一個項目需要紀(jì)律和領(lǐng)導(dǎo)能力,這是我想向面試官重點(diǎn)突出的兩個能力。其次,對于那些我從頭至尾負(fù)責(zé)的項目,我可以向面試官深入且廣泛地描述項目的各個方面。這一點(diǎn)在我參加Twitter的面試時回答有關(guān)設(shè)計的面試問題時發(fā)揮了重要作用,在Twitter的面試中,面試官不僅對我負(fù)責(zé)的項目的設(shè)計工作進(jìn)行了嚴(yán)格的考察,而且還對背后的決策進(jìn)行了考察。

我會將20%的時間用于調(diào)查研究。這里說的調(diào)查研究是指對我感興趣的公司進(jìn)行盡職調(diào)查,并尋求內(nèi)部推薦的機(jī)會。通過內(nèi)部推薦的方式能夠大大提高求職信的回復(fù)率。根據(jù)我自己的實(shí)際經(jīng)驗(yàn),我向20多家創(chuàng)業(yè)公司和中等規(guī)模的公司發(fā)送了求職cold message,只有少數(shù)幾家公司回復(fù)了。但是如果得到對方公司內(nèi)部員工推薦的話,那么對方公司幾乎都會在一周時間內(nèi)內(nèi)給我回復(fù)信息。

我并不善于交際,我認(rèn)識的能將引薦給我感興趣的公司的人其實(shí)并不多。為了解決這個問題,我會經(jīng)常使用LinkedIn。LinkedIn里有一個搜索功能,我經(jīng)常用它來搜索1?度聯(lián)系人和2度聯(lián)系人。所謂1度聯(lián)系人,就是通過接受邀請直接建立聯(lián)系的會員。你可以查看他們的個人檔案和人脈信息,不受限制地向?qū)Ψ桨l(fā)送站內(nèi)信,還可以在你的個人首頁看到對方在領(lǐng)英的動態(tài)消息。所謂2度聯(lián)系人,就是已經(jīng)與你的1?度聯(lián)系人建立聯(lián)系的會員。通俗理解就是你好友的好友,一般是沒有建立直接聯(lián)系,但和你可能有交點(diǎn)的人群。免費(fèi)賬戶可以看到2度人脈的個人檔案,可以看到和對方的共同聯(lián)系人,但不可以直接發(fā)站內(nèi)信。

非名校出身的我,是如何拿到Facebook、谷歌、微軟、亞馬遜和Twitter的Offer的?

LinkedIn的搜索功能

這是非常重要的,因?yàn)榻o一個人你不認(rèn)識的人直接打求職電話是非常困難的。當(dāng)接到不請自來的陌生人打來的電話時,人們通常都非常謹(jǐn)慎,通過這種方式很難很快建立信任關(guān)系。LinkedIn在我調(diào)查研究階段對我的幫助非常大。

回顧我面試過的所有公司,以下是我對每一家公司的看法:

  • Facebook/Google:很機(jī)械化。標(biāo)準(zhǔn)的面試流程,我和這些公司無法建立任何情感連接。
  • Pinterest:在這家公司的面試體驗(yàn)并不是最好的,但這家公司是一個很酷的公司,產(chǎn)品也是很酷的產(chǎn)品。
  • 微軟:我非常喜歡我所面試的團(tuán)隊,尤其是團(tuán)隊經(jīng)理。標(biāo)準(zhǔn)的面試問題,但是非常個性化。是我的第二選擇,當(dāng)然這個因人而異,微軟每個團(tuán)隊的面試風(fēng)格是各不相同的。
  • Amazon:標(biāo)準(zhǔn)的面試流程。大概有50%的人會喜歡這種面試風(fēng)格,也有大概50%不喜歡這種面試風(fēng)格。
  • Twitter:面試流程非常有趣和個性化。我個人非常喜歡它的面試流程,非常重視個人和我過去做過的事情。
  • Snapchat:在洛杉磯有非??岬霓k公室,有很多人都決定在創(chuàng)業(yè)的大潮中加入其中。
  • Lyft:離我住的地方不遠(yuǎn),辦公室很不過,標(biāo)準(zhǔn)的面試流程,我對這家公司沒有太強(qiáng)烈的感覺。

下面分享一下我最喜歡的一家公司及其面試流程

從很多方面來說,我認(rèn)為要通過Twitter的面試都是非常困難的。但與此同時,Twitter的面試流程比我面試過的其他任何公司都更有趣、也更個性化。

Twitter的面試流程大概是這樣的:與一個工程經(jīng)理進(jìn)行簡單的介紹性電話面試。接下來是一到兩輪的技術(shù)電話面試,這取決于你的表現(xiàn)。如果通過電話面試,他們會把安排你到應(yīng)聘工作地點(diǎn)進(jìn)行現(xiàn)場面試,我是在西雅圖參加的現(xiàn)場面試。一共有3輪1小時15分鐘的現(xiàn)場面試,每場面試都有兩個面試官。

最開始的兩輪電話技術(shù)面試都是標(biāo)準(zhǔn)化面試,你需要在一個共享的編碼文檔中通過編程來解決實(shí)際的問題。

現(xiàn)場面試更像是一種雙方的互動交談,也不會讓人感到太害怕恐懼。面試官會問你一些關(guān)于你過去參與過的項目的深度問題,他們會詢問你過去做過的事情。如果你過去曾負(fù)責(zé)過一個項目,那么面試官就會問一些有關(guān)這個項目的問題。面試官鼓勵你用這些項目作為參考,并從中來試探你的想法。

其它公司的面試感受

相比之下,我覺得Facebook和Google的面試更加機(jī)械化。他們有1-2輪的技術(shù)電話面試,5到6輪的現(xiàn)場編碼考核。每一輪面試都需要你在白板上進(jìn)行編碼,還要要求你在一個相對合理的時間內(nèi)完成一個近乎完美的解決方案。

Facebook有兩輪編碼面試,一個設(shè)計面試,一輪行為面試。在一天面試快要結(jié)束的時候,我又參加了一輪shadow面試((即老員工面試,自己旁聽),這部分面試并沒有計入我的面試總分。

Google有5輪編碼面試,沒有一輪有關(guān)設(shè)計的面試,期間沒有一位面試官問我之前做過的項目。雖然我并不認(rèn)為這是一種糟糕的面試方法,但這種面試讓我感覺太機(jī)械化了,并沒有給工程師提供多少機(jī)會來展示他們的能力。有些人在這種面試中表現(xiàn)得非常好,就像有些學(xué)生在考試中表現(xiàn)優(yōu)異一樣。

我并不是喜歡在Pinterest的面試體驗(yàn)。我認(rèn)為Pinterest這款產(chǎn)品本身非常有意思,他們的工程技術(shù)團(tuán)隊似乎也在解決一些非??岬募夹g(shù)問題。但是我在Pinterest的面試體驗(yàn)卻是非常糟糕的。

Pinterest有三輪編程面試、一輪設(shè)計面試。在這4輪面試中,設(shè)計面試是最讓我失望的。為什么這么說呢?面試官遲到了,他花了幾分鐘時間在我瀏覽了一下我的簡歷,然后開始在白板上畫一些API。他簡短地描述了他期望API做什么,并問我該如何解決這個問題。我們闡明了API的特性,然后我開始使用白板描述我的解決方案,大概5分鐘后,我轉(zhuǎn)過頭發(fā)現(xiàn)他竟然睡著了。這次面試體驗(yàn)太糟糕了。我在一項調(diào)研問卷中向招聘人員反饋了這個問題,但是沒有收到任何回復(fù)。

我就不詳細(xì)和大家分享我在面試中被問到的所有問題的細(xì)節(jié)了,不過我想和大家分享我在準(zhǔn)備面試的過程中學(xué)到的一些經(jīng)驗(yàn)和有用的技巧。

我學(xué)到的東西:

(1)簡歷內(nèi)容一定要做到實(shí)事求是

大多數(shù)公司的面試官會問你一些關(guān)于你的簡歷上的內(nèi)容的問題,面試官通常能夠根據(jù)你的回答很容易判斷你是否在簡歷內(nèi)容上作假了。此外,對一個項目做到100%的了解要比對10個不同項目有10%的了解要好得多。

(2)簡歷最好只用一頁

對于科技公司來說尤其如此,因?yàn)榭萍碱I(lǐng)域有一個普遍的共識,只有當(dāng)你有博士后的研究經(jīng)歷或者親自深度負(fù)責(zé)過很多項目,這時你的簡歷有2頁或更多頁才是合理的,否則最好用一頁。

(3)多出去社交并建立一個自己的人脈網(wǎng)絡(luò)

軟件工程師職位的競爭非常激烈,這些頂尖的科技公司每天要篩選成千上萬份簡歷。如果你應(yīng)聘的公司內(nèi)部有員工幫你引薦,那么你的簡歷被關(guān)注的可能性會更高。

(4)精心準(zhǔn)備面試內(nèi)容

每一個對你感興趣的公司都想知道:你為什么對他們感興趣?

一個糟糕的回答是:

我現(xiàn)在急需找到一份工作幫賺錢支付賬單。

一個不那么糟糕的回答是:

我在網(wǎng)上瀏覽,發(fā)現(xiàn)了你們公司,好像你們在做一款非常有趣的產(chǎn)品。

一個很好的回答是:

我知道你們公司在X領(lǐng)域做了一些有趣的工作來實(shí)現(xiàn)Y。我在過去做過一些工作,這是我學(xué)過的關(guān)于A、B、C的知識,這些知識可能與X領(lǐng)域有關(guān)。我對Y非常感興趣,因?yàn)?#8230;…(不要將這當(dāng)作一個固定的模板。相反,你應(yīng)該從中找到模式,——做充分的調(diào)查研究,向你應(yīng)聘的公司展示為什么你和這家公司是非常匹配的。)

其它一些建議

技術(shù)面試是非常困難的。然而,最好的機(jī)會是留給那些準(zhǔn)備好的人。

(1)早做準(zhǔn)備,而且要做充分地準(zhǔn)備

每個人都知道他們應(yīng)該為面試做準(zhǔn)備,但大多數(shù)人都不知道如何才能真正做好準(zhǔn)備。就像任何值得做的事情一樣,需要刻意練習(xí)才能在某件事上有出色得表現(xiàn)。而刻意練習(xí)意味著你需要有一套系統(tǒng)。

(2)建立一套用來練習(xí)技術(shù)技能的系統(tǒng)

我會根據(jù)1-10分的評分方式對自己的表現(xiàn)進(jìn)行評分,并努力提升我自己最不擅長的領(lǐng)域。我花了好幾天時間研究不同類型的面試問題,直到我完全掌握了每個概念。我每天都在Evernote上做筆記,筆記內(nèi)容包括編程技巧、常見錯誤和誤解、用于解決特定問題的框架等等。

非名校出身的我,是如何拿到Facebook、谷歌、微軟、亞馬遜和Twitter的Offer的?

我的Notebook

(3)將你掌握和學(xué)會的知識記在本子上

我同時使用Evernote和OneNote來記錄和追蹤事情。我用OneNote來記錄技術(shù)方面的內(nèi)容或代碼,因?yàn)槲铱梢园凑瘴蚁矚g的方式來對這些筆記進(jìn)行格式化。我用Evernote主要寫一些文章或感想。上面的圖片顯示的是我在架構(gòu)和系統(tǒng)設(shè)計上的一些想法。

非名校出身的我,是如何拿到Facebook、谷歌、微軟、亞馬遜和Twitter的Offer的?

Evernote主要用于記錄想法/技巧

(4)把所有的事情都記錄下來,即使你認(rèn)為你不會用到它也要記錄下來

我非常健忘,所以我會將我學(xué)會的任何東西都記錄下來,包括shell命令。我會時不時地閱讀技術(shù)博客,如果我發(fā)現(xiàn)任何有趣的東西,我都會立刻在Evernote上將其記錄下來。我會每星期或每月對記錄過的內(nèi)容做一次整理優(yōu)化。這個習(xí)慣在我的職業(yè)生涯中對我的幫助很大。

(5)模擬面試

這絕對是非常有價值的,我極力推薦大家這樣做。我會和朋友一起進(jìn)行模擬面試,并盡可能多地練習(xí)。如果你找不到朋友一起練習(xí)模擬面試,那么我推薦你使用Refdash,這是一款“面試即服務(wù)”的產(chǎn)品。這個平臺上有一群在Google、Facebook和微軟等大型科技公司工作的面試官。這些面試官會評估你的編碼和設(shè)計技能。最重要的是,在每次模擬面試后它都會給你打出一個分?jǐn)?shù),并給出一些具體可行的改進(jìn)方法。

(6)允許自己失敗

在我整個應(yīng)聘過程中,我經(jīng)歷過很多次的失敗。有時失敗只是因?yàn)槟氵\(yùn)氣不好。即使你面試失敗了,這對你來說也不是世界末日。公司在招聘的過程中傾向于說“不”,因?yàn)檫@對他們來說風(fēng)險更低。從長遠(yuǎn)來看,犯假陽性的錯誤比假陰性的錯誤的成本更高。最初的幾次拒絕給人造成的打擊最大。當(dāng)我剛開始面試的時候,我?guī)状坞娫捗嬖嚩紱]有通過,我的自信心也受到了嚴(yán)重打擊。我對自己的能力也開始心存懷疑,并開始擔(dān)心自己的技能在當(dāng)今的就業(yè)市場中已經(jīng)不受待見了。然而,我給自己支了一招:如果你失敗了10次,那么再多嘗試10次。你所需要的只是一次成功,這種安慰給了我很大的信心,讓我能夠不斷嘗試,當(dāng)我拿到第一個Offer之后,后來的其它Offer來得就會容易很多。

我花了大約兩個月的時間來為我的面試做準(zhǔn)備和并做各種模擬練習(xí)。我每周大概會在這方面花20個小時,或者每個月花80小時,在全職工作之余進(jìn)行學(xué)習(xí)和記筆記。

為了充實(shí)我的簡歷,我花了3年半的時間去專心刻意地工作。在日常工作中,我會有意識地選擇那些困難棘手的工作,這樣我就能比其他人學(xué)到更多東西。盡管我并非畢業(yè)于常青藤名校,之前也沒有在頂尖科技公司工作的經(jīng)驗(yàn),但我對我所負(fù)責(zé)過的項目有一個清晰透徹的理解,并在簡歷中體現(xiàn)出這一點(diǎn),從而讓自己在面試中能脫穎而出。這是有可能做到的,因?yàn)槲易隽撕芏嘌芯?,并將我學(xué)到的所有東西都記錄了下來,并建立一個用來練習(xí)技術(shù)技能的系統(tǒng)。

要記住:堅強(qiáng)的人能夠生存,堅韌的人能夠茁壯成長。

小結(jié)

不要放棄,為機(jī)會而時刻準(zhǔn)備著,多練習(xí),并始終懷有希望。專注于過程,并在整個過程中采用嚴(yán)格、專門的方法。

我推薦的書籍和工具:

  • 書籍《Elements of Programming Interviews: The Insiders’ Guide》?:對解決那些非常難的編程問題非常有幫助。
  • 書籍《Cracking the Coding Interview: 189 Programming Questions and Solutions》:很好地覆蓋了基本的CS知識。
  • OneNote:我使用這款工具來存儲所有的代碼片段。
  • Evernote:我使用這款工具來記錄存儲其它所有東西。
  • CodeRunner:我非常喜歡這款Mac應(yīng)用,我曾多次使用它來運(yùn)行特定的Python腳本和函數(shù),而且效果非常好。
  • Jobscan:我聽說過很多關(guān)于它的很酷的事情,建議你試試它的簡歷篩選工具。
  • Refdash:由一群前Google員工運(yùn)營的產(chǎn)品。用這款產(chǎn)品來模擬面試的效果非常贊。我在Refdash上碰到的面試官曾在Google工作過,他為我指出了很多我應(yīng)該關(guān)注的地方,以及Google面試的主要評分依據(jù)。我強(qiáng)烈建議你嘗試一下。
  • CodePath:一個幫助人們進(jìn)入科技行業(yè)工作做準(zhǔn)備的非盈利組織。公司的兩位負(fù)責(zé)人Tim和Nathan都是很棒的人,我從他們那里學(xué)到了很多。這個社區(qū)非常有幫助,每個人都愿意伸出援手。

 

原文地址:https://medium.freecodecamp.org/how-i-landed-offers-from-microsoft-amazon-and-twitter-without-an-ivy-league-degree-d62cfe286eb8

譯者:達(dá)達(dá),由36氪編譯組出品。編輯:郝鵬程。

譯文地址:http://36kr.com/p/5122385.html

本文由 @郝鵬程 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。

題圖來自 Pixabay,基于 CC0 協(xié)議

更多精彩內(nèi)容,請關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!