來聊聊 Google :D
Google 的實習面試流程應該是 FLAG (Facebook, LinkedIn, Amazon, Google) 中最複雜的,
而且看起來複雜度有逐年增加的趨勢 XD …
我算了一下,到目前為止 email 訊息已經超過 70 封 OAO”
Forewords
Google 有很多實習生的 program ,
其中跟 CS 領域相關的有 Software Engineering Intern
(大三以上)、以及 Engineering Practicum Intern
(大一、大二),
而我申請的是 Software Engineering Intern
(BS/MS, Summer 2017) 。
大家對 Google 有興趣的話, Google 有一個 YouTube 頻道 - Google Students 專門在介紹相關事物。 這個頻道剛好最近有更新了一些相關的影片:
- Applying to Google: Technical Resume Tips with Google (履歷注意事項)
- Applying to Google: How to Ace the Engineering and Technical Interview (面試應對指導)
- How to: Work at Google — Example Coding/Engineering Interview (範例題目/面試)
- How to: Prepare for a Google Engineering Interview (面試準備指導)
- How to: Work at Google — How We Hire (Google 如何招募)
我接下來會根據面試流程將文章分成 5 個段落介紹 :)
The 5 stages of a Google interview
1. Before the interviews
- 取得面試機會
- 面試之前,Google 有超~多事情要做的
- 4 份表單,內容包括:是否有身障、個人資訊、能力專長及興趣,甚至還有性向測驗 0.0。
- Coding sample,90 分鐘線上解 2 道簡單的程式題目。
- 面試預約,我個人覺得這邊還滿吃虧的,因為美西的上班時間換成台灣時間是 1 點到 8 點,所以等於我們得在天還沒亮的時候面試 … XD(我是 1 點到 3 點連面 2 場)。
- … 上面這些事項加起來花了我一整天的時間(不包含面試)XD。
2. Technical Interviews
- 這關是什麼
- 這關會有至少 2 次 45 分鐘的技術性面試,問的問題包含各項 CS 重要的科目:演算法、資料結構、離散數學、作業系統、甚至連計算機架構都可能會問到。
- 會在 Google Docs 上現場寫 code ,大約會有兩道程式題,其中包含逐漸增加難度的小題。基本上兩題都得做出來才有機會進到下一關。
- 這是難度最高的一關,好像超過九成都是在這被刷下來的。
- 心得
- 問清楚題目規格,比如說數字範圍、記憶體限制、操作限制等各項條件。
- 講話不要停頓,務必隨時讓面試官知道你在想什麼,面試官想知道你的思考流程;建議可以先從好想的簡單解法說起,接著再深入優化並分析該解法。
- 如果有東西沒信心能夠當場寫出來(比如說某個資料結構),可以跟面試官說,你只要解釋清楚它的功能即可。
- 如果沒聽清楚問題可以請面試官複述一遍,如果有沒聽懂的部分也可以請面試官澄清,切記不要沒聽懂問題就隨便回答。
- 面試官不見得是美國人,所以英文可能會有口音比較難懂一點,在這種情況下請面試官複述是絕對沒問題的。
3. Committee Review
- 這關是什麼
- 面試一~二禮拜後,會有一個 Hiring Committee (招募委員會) 根據面試情況及面試官回饋,從申請者的技術能力、溝通能力、個人背景這三方面進行審核。
- 審核結果可能如下
- 通過,並給予 Open Offer ,意即保證實習資格(這個制度好像是去年還前年新增的)。
- 通過,並進到下一關 Project Search(這是我收到的)。
- 招募委員會表達疑慮,決定安排第三場面試(所以如果被排第三場面試要謹慎一點)。
- 不通過,面試階段結束。
4. Project Search
- 這關是什麼
- 前面有一份問卷調查了能力專長及興趣,詳細內容包含:想做什麼樣的 project 、想在哪些辦公室工作、有哪些方面的能力專長,這份問卷會連同面試的資料被放在一個 Google 內部的資料庫;
- 有找實習生的主管(host)會在這個資料庫裡面,根據擬定的 project 內容挑選適合的人選來面試(host matching interview);
- 這邊的面試比較像是聊天,主管會聊聊實習的 project 內容,也會深入聊聊你過去相關的經歷。
- 心得
- People Skills 很重要,只有 30 分鐘讓主管喜歡你(!?),一定要讓主管在這短短的時間感受到你高度的熱誠與興趣。
5. Offer
Hi Jasmine, I have great news :)! #### has let us know that he really enjoyed speaking with you and would love for you to join his team this Summer :).
- Need I say more than that :P?