如何得到 Facebook 的工作機會?

對於技術崗位來說,在個人技術方面還需要達到什麼樣的程度?

相關問題:

  1. 如何得到 Google 的工作機會?

  2. 如何得到蘋果公司 (Apple) 的工作機會?


這個答案適用於所有矽谷大公司,主要適用於應屆生。

第一步:交簡歷

交簡歷的方式有很多

  1. 如果 Facebook 在你的大學招聘的話,在 Career Fair 上遞簡歷。這主要適用於北美的學生。在中國,FB 沒有正式招聘活動,但在一流大學(清北、上交等)通常會有通過校友、學生組織來代為傳遞簡歷
  2. 內推。找你熟悉的員工,把你的簡歷放到招聘系統中。因為如果推薦成功有獎金,一般大家會很願意幫忙(當然你需要滿足起碼的條件)。內推一般不會增加錄用的概率,但基本可以保證拿到 phone screen
  3. 官網投簡歷。https://www.facebook.com/careers/
  4. 把簡歷直接交給你認識的公司 recruiter

第一點五步:Phone Screen

通常為了防止耽誤工程師的時間,如果你和 recruiter 未曾謀面,通常他們會安排一輪 phone screen,由recruiter進行,問一些基礎問題,答案很明確(所以可以由非工程師進行)

問題舉例(所有題目均來自各個不同的公司,下同)

  1. HTTP 使用的是什麼埠
  2. SSL 是什麼意思,有什麼用
  3. 在代碼庫中找一個函數,應該用什麼命令行工具

如果能確定你不會浪費公司的時間(比如你曾經和 recruiter 聊過,你有人內推並強烈推薦,等等),有些時候這個環節會省掉。

第二步:電話面試/校園面試

接下來你將被工程師面試,考察代碼能力。如果是校園招聘,面試在學校就業中心或學校附近賓館進行。否則通過電話進行。

電話面試通常是打開一個在線文本編輯器如 Google Doc。面試官提出問題,由你現場寫代碼。寫完後通常會和面試官討論,如 testing strategy,時間空間複雜度,改進空間,等等。

問題舉例:

編寫一個程序 deep clone 一個圖(graph)

檢查一個只含有括弧的字元串括弧是否正確嵌套,即[()]是合法的,())(是不合法的

面試的技巧是 think aloud,把你的思維過程說出來。面試考察的是解決問題的能力。你並不需要聽到問題後立刻開始寫(通常最好是你先要求澄清一下問題中模糊的點,並大致描述一下你的演算法)。並不需要第一次就寫出最優演算法。先寫出 O(n^2),之後改進成O(n log n)比想十分鐘O(n log n)好很多。

第三步:On-site Interview

如果你通過了電話面試,你會被邀請到公司的總部面試。公司會提供機票酒店並報銷你的餐費、計程車等費用,換句話說你不需要自己花一分錢。

面試題和電話面試類似,但有時會涉及到 architecture 類問題,比如:

問題舉例:

我現在要寫一個短網址(URL shortener)服務,這個服務的架構應該如何設計?

面試技巧和上面一致。

On-site interview 還會考察所謂 cultural fit,也即你能否很好地適應到公司的文化中。只要你性格不要太古怪一般問題不會很大。同時會帶你參觀公司,也給你一個了解公司雙向選擇的機會

第四步:發 Offer,談條件,簽 Offer,辦簽證

如果一切順利的話你會拿到 offer。如果你有籌碼(通常是對手公司offer)的話,待遇一般可以談(放心 rescind offer 只有極端情況才會發生)。之後,簽完 offer,公司雇的移民律師會幫助你申請工作簽證(放心,肯定讓你走成。即使美國簽證實在拿不到,可以去加拿大辦公室過渡半年到一年)

第五步:入職

Yay

第六步:出任 CEO,贏取白富美,走向人生巔峰


當年大學住在馬克隔壁,畢業後就去了。。。


推薦閱讀:

Facebook 和 Twitter 的本質區別是什麼?
馬克·扎克伯格(Mark Zuckerberg)會哪些技術?他最擅長的是什麼?
怎樣看待Facebook穆斯林僱員要求刪除Trump的發帖,被臉書高層拒絕後,威脅要辭職?
馬克·扎克伯格在 Facebook 早期做出的最重要的決定有哪些?
如何看待馬克·扎克伯格全程用中文在清華接受訪問?

TAG:Facebook | 程序員 | 工作 | 矽谷就業 |