PTT評價

[心得] 2024 Google面試與刷題心得

看板Soft_Job標題[心得] 2024 Google面試與刷題心得作者
HelloPTTer
(Illicium)
時間推噓33 推:33 噓:0 →:9

大家好,小弟受惠於版上許多,最近求職收到L4 Google coding interviews第二輪三場的面試回饋,recruiter說L4繼續走下去有risk不過也是有機會,若down level L3則是沒太大問題。不過面完當下自覺機會不大,已經先接受其他offer答應說要先做一陣子,雖然成績現在可以保留18個月,期間還是可以做team match不過目前我就先不move on了,跟大家分享一下面試與刷題的心得。第一次發文若有任何不妥再麻煩提醒。

Week1 - Google Careers投遞無聲,過一個禮拜投遞狀態變not proceeding,直接涼涼。

Week3 - 不死心再投其他職缺,隔一兩天recruiter約meeting討論面試的時間與準備項目,聽說通常是約一個月後,我也這照時間去安排。

Week7 - Mock interview,面試官臺灣人,人很好,會問你希望如何進行mock幫助你,我請他當作正式面試來面,最後再跟我說哪邊可以改進,給了我很多建議。

Week8 - 第一場coding interview,臺灣人,中文進行,難度約med-hard,大約30分鐘寫完最佳解,後續就在聊天,自覺是bug-free。隔天收到回覆說表現不錯,再約後續三場面試時間,因為後續自己有其他面試,所以再約稍久一點之後。

Week11 - 連續三關
第二場,美國華裔,英文進行,難度約med,約30分鐘寫完最佳解,之後一題follow-up寫完剛好時間就到了,沒來得及對follow-up的code進行dry run,後續回想code應該有2個bugs。

第三場,印度人,英文進行,難度med,以往自己網路上mock時對於印度口音蠻不習慣的,不過這次遇到的口音還好不怎麼重,理解沒問題但還是花了約20分鐘才把我自己的解法讓面試官聽懂,但不是optimal,面試官要我再想想更好的作法。之後方向有提出來,但有一個關鍵點沒想到如何解,到了30分鐘時,面試官假設有一個magic function輔助可以如何解,最後寫出約90%後時間到了,這裡optimal的解法時間最差應仍是與第一個提出的方法一樣,但平均會更少。

第四場,臺灣人,中文進行,難度med-hard,約35分鐘寫完最佳解,過程中有2處code寫出來跟講的不太一樣被面試官糾正,一題follow-up,講完follow-up解法後時間到了沒寫code,後續回想第一題code應該還有2個bugs沒發現到。

Week12 - recruiter回饋
第二場,L4 hire,Algo/Data structure使用恰當,雖然面試時面試官沒有提出要求,但如果可以給多種solution與tradeoff會更好。

第三場,L4 no hire,L3 hire,分析問題、說明次佳解的解法、分析次佳與最佳解的時間複雜度做不錯,扣分點在於最佳解關鍵點沒寫出來及有給hints。

第四場,L4 lean hire,分析問題、定義輸入與輸出做不錯,思路講得清楚,扣分點在於有bugs以及有給hints。

面試總結,我想為了達到完美,除了勤刷題外,刷題跟面試有兩個點蠻不一樣的再提醒一下:
一是盡量只靠description去寫code,像LeetCode寫慣了不太需要去思考輸入/輸出/型別等,也常利用輸入的長度如n=1e6來判斷大概是O(n)的解法,但面試時就只有description其他都要靠自己。
二是關於溝通部分,因為面試時還要跟面試官討論,來回也是不少時間,所以不論中英都要能簡單且準確地表達意思,平常練題最好先用口語把解法講清楚後再寫code。


之後就是關於刷題的心得分享,小弟LeetCode題目1000+(E 300/ M 500 / H 200),週賽100+場,rating仍在2050徘迴許久,容小弟野人獻曝給大家分享一些資訊。

關於刷題的方法,我想網路上資訊已經很齊全了,其中覺得最完整的是”0到100的軟體工程師面試之路”以及”胖头龙的咸鱼刷题笔记-算法篇”這兩篇,從刷題的心法、刷哪些
題目、大神的講解甚至面試準備都有涵蓋,內容不少但每一陣子回去看都有新的收穫,時間趕的話看0到100 day10那篇就好,跟著大神刷,表現頂呱呱。有些文章會推薦你去刷跟自己rating相近的題目,可以用這個網址去找分數對應的題目。
https://zerotrac.github.io/leetcode_problem_rating/#/

關於刷題的複習,覺得當經典題都做完一輪後,複習重要性>>做新題,因為很多題目都能沿用某些題的解法架構,另外像是不熟的解法也必須藉由反覆複習變得精通,不熟的題目碰上面試的時間壓力基本上就可以當作沒做過了。雖然上面說題目刷到1000+但真正有效的練習我想是在我開始建立複習表後,大概500-600題,其餘部分嚴格上來說做完就忘了。這邊提供版友自己的Notion複習模板,可以記錄題目的類別、熟練度、做題的時間與下一次預計複習的時間,方便後續複習,網址的右上角可以Duplicate這個模板。

https://lumpy-cut-a12.notion.site/a9cf0ada5ca64953b5273e10acdbde11?v=1aede3e9038940828ac4da7ed17cf15b&pvs=4

關於面試前的英文mock,我只有使用Pramp這個平台,跟世界各地的人面,很常碰到印度人,基本上免費,註冊時會送你5個免費credits,每次interview消耗一個,但每一次結束時雙方會互評作為面試者與面試官的表現,若對方評你是好的面試官會送你一個credit,也就是基本上用一個給一個不太會消耗,甚至有時候面試中對方斷線還會多送你一個,我越面越多最後這個credit變11個,不過這個平台面35次後就說沒新題目面了,只好再開新帳XD。

最後則是個人心得,有時覺得自己陸陸續續刷題三年rating才是有些人的起點感到有些灰心,但這次面完覺得小弟身為凡人要表現的好並不是那麼地遙不可及,如果更早知道這些東西應該會有所幫助,而且回過頭來看對於自己的成長感到欣慰。我想正是因為知道過程的辛苦,才會希望每個認真的人能夠含笑收穫,所以分享這些資訊給正在努力的人,小弟之後有機會會再繼續挑戰。

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.111.6 (臺灣)
PTT 網址

mike846905/29 14:11推推!

jason9092905/29 14:14推推

f12sd2e2aa05/29 14:15100場要連續快兩年準時守星期天欸 佩服

hduek15305/29 14:16lowball狗 通通lowball

holebro05/29 14:17恭喜

holebro05/29 14:20每次看這種刷題文都突然很有動力想刷 但大概一週後就躺平

beeeans05/29 14:34謝謝分享

hobnob05/29 14:36推。厲害

qk338088805/29 14:55100場週賽好猛 每次起床都要結束了…

idok05/29 15:397....

rdg123105/29 15:46推,這心態和持之以恆都是可以學習的

peter9805/29 15:49恭喜 但是你的情況就是再尋常不過的lowball. 已經為人詬

peter9805/29 15:49病好幾年 這就是疫情漲薪後大家都說去G的薪水被Meta及Am

peter9805/29 15:49azon屌打的原因

alongalone05/29 16:08lowball 是指 L3 hire ?

meokay05/29 16:10認真給推,厲害的人總是無私分享

DrTech05/29 16:20好詳盡,又有自己的看法邏輯。這種人不管到哪間公司都會是

DrTech05/29 16:20優秀的人

wizozd8407005/29 17:50推~很棒的心得文

river461305/29 18:07優文推

johnny9405/29 18:48有刷有推

nexttw05/29 19:08刷題夥伴+1推

rickykai05/29 19:19心得很讚,推推

OldTjikko05/29 19:48推 感謝分享

blade12305/29 19:52非常厲害 早晚可以進來當同事的

Alllllogo05/29 21:03

yc001513905/29 21:51

Daiblo205/29 22:50推一個 寫得清楚明瞭

milkdragon05/29 23:02感謝分享心得及方法,受用無窮!!

supercrazy05/29 23:19

lukelove05/30 01:24好文

buke05/30 02:07

duck1070405/30 09:23

nek0t1m05/30 09:42推推

transforman05/30 09:54推毅力

Phenomenon05/30 10:05

allen332505/30 10:15推毅力跟分享!好棒

whitecolor05/30 11:05厲害 推

HalfLucifer05/30 13:16很感謝你的分享!

a8261114105/30 18:12

wangm4a105/31 03:59

spen200505/31 11:33