2022 Google Taiwan SWE (new grad) 面試心得
面試重點
1. Clarify the problems
看到問題不用秒解,先跟面試官確認題目限制,以及自己理解的 input/output 是否和面試官一樣。例如 array 的話 sorted or not、graph 是不是 no cycle 等等。
2. Keep communication
「確保面試官有跟上自己的思路,不要讓面試官在狀況外!」這部分不能只是自個一直說話,而是要讓面試官「理解」自己的說出來的東西,跟面試官確認自己的想法。如果不確定自己的思考方向對不對也可以跟面試官討論(因為有一題我蠻擔心自己往錯的方向思考,問了之後,面試官說 yes, you’re close to the solution.)。
3. Think out loud
想到什麼說什麼。這樣的話如果有卡住的地方或是想法錯,面試官(可能)會適時提供思考方向或是糾正。另外也可以嘗試把思考的東西打出來,優點是在寫 code 的時候就可以按照自己的思路去寫,避免因為太緊張寫出來的和講的不一樣,也可以避免程式碼刪刪改改。
4. Clean code
Google 蠻注重 coding style,所以變數、function名稱要易讀,不要用意義不明的命名。(coding style 可參考:Google C++ Style Guide)
個人心得
1. LeetCode 重質不重量
不用為了拼題數自亂步調,面試前我大約寫了兩百多題,把經典題和 top questions 做熟就好了(做熟:二刷或三刷+,通透基本概念和解題思路),基本上其他新題目就是轉換一下概念就可以了。
2. Mock 超級無敵重要
能多 mock 就 mock!找到願意一起努力的夥伴,除了可以多做練習,也可以互相鼓勵。mock 除了可以培養解題的時間控管能力,多練習也才不會怕!
3. 英文面試要有心理準備遇到不同國家的人
基本上準備 Google 面試還是要有一定的英文溝通能力。像我兩個英文場都是排到印度的 googler,當下有點挫,第一場語速太快+腔調的原因,有點沒跟上。後來有請面試官稍微放慢一下速度,才漸入佳境。
4. 溝通!溝通!溝通!
我覺得面試過程「溝通>>>>程式能力」。每個面試官風格都不同,有些會都不說話,要主動跟面試官確認想法,也有些面試官會反覆詢問你每一行 code 的用意。過程除了不斷地表達思路,也要努力和面試官達成共識。
5. 心態上的調整
我不是很厲害的人,一開始光寫 easy 都可以花 20 分鐘以上,後面才慢慢提升手感和思考速度,這兩個月看到各種心得文都覺得我是去被洗臉的吧。分享一句朋友說的:「每個人都有自己的學習步調,找到適合自己的就好。」
最後決定加入 ChromeOS team,真的非常感謝這一路上幫助過我的人,很幸運走完了這一趟面試旅程!也祝看完這篇文章的你未來一切順利!
如果喜歡我的內容,請幫我按讚/拍手,或分享給有需要的人。有任何問題也歡迎留言詢問!
瀏覽 16,360 次