2023 面試心得 (Google/NV)

前言: 工作了大概一年多,雖說沒有一定要跳槽,不過抱持著試試看的心情去面試。 比較可惜大部分都不能丟新鮮人的缺了QQ 工作後陸陸續續有Linkedin的獵人頭來找 但我大多都沒什麼興趣,最後也就面了這兩家。 排版有點醜,請見諒QQ 背景: Leetcode rating : 2400~2500 題數: 2000+ 我很堅持一定會寫每日一題以及官神的Daily 偶爾了解一下進階資料結構跟演算法 分數說實在真的沒什麼用 比賽跟面試是差非常多的 附上Leetcode人權紀錄
megapx
=============================================================== # Google 找人內推,丟了三個部門 Software Engineer, Google Home, Nest Software Engineer, Backend, Google Nest Software Engineer, Display, Pixel 不過據說SWE只能選一個,後來選Pixel那個 時間軸: - 7/7 hr talk - 7/27 phone interview - 8/16 phone 告知 passed - 8/18 hr talk - 9/6 Onsite interview - 10/17 感謝函 ## HR talk 主要聊這個部門在做什麼,以及了解你的背景,刷題經驗等等 面試時會希望寫出readable, bugfree的code 以及問清楚限制,問清楚想法 然後會幫我安排一場mock,但後來我覺得太久我就跟HR說我想直接面試 ## Phone Interview 面試官好像是台灣做silicon的小哥,考了一題array相關題 不過他好像對題目不熟,感覺很佛系的面試官 直接把題目貼上來,然後就說一起看看 問了一下題目意思,他會回答差不多就是你理解的這樣XD 整體是很輕鬆而且時間非常充裕的面試,寫了兩個Follow Up 第二個Follow up會需要recursive去解這個問題,後面剩下5分鐘 都有做到完整的測試 面試官說其實也可以也可以結束了,他也蠻看好我的(立flag) 最後就是聊了一些QA,面試官對我評價蠻不錯的 ## HR talk 經過兩個禮拜,後來HR打電話跟我說準備技巧 基本上HR說就照著我phone的步調就行了 以及跟我說一下接下來的流程 有三關gerneral coding一關bq coding保底一場美國人,兩場隨機 bq是主管面試的順便做fittalk 讓我感覺到BQ關基本上就是上了 ## Onsite 第一場 (英文) 這一關是一個美國的華人,一看就是資深工程師 一開始他做了一個簡單的介紹之後就開始講題目 題目講得有點久,寫題節奏有點被打亂 後來要問限制的時候,感覺他不太想要我問 都說輸入都是合法的,可以趕快開始 這題算是array+sorting類型的 解題想法很快就想到了,不過在實作的時候index換算卡卡的 就停下來說剛剛講解法的時候沒想到這part我想一下 後來他就直接說口頭打斷我跟我說沒必要卡住,不過他在提示我的時候 我沒有很專注地聽,反而他講完我說我有一個簡單的作法 寫完之後剩下output然後時間就到了 自己覺得節奏有點被帶走了,然後可以不需要邊寫邊講腦袋很容易空白 時間到就進行15min的Q&A ## Onsite 第二場 (英文) 這一關也是一個美國的華人,資深工程師 題目敘述也不難,一開始我問了很多限制,在問限制的過程中,腦中會有一些解題想法 前面有列了很多example幫助想法,並在第一版code有進行dry run 但這個美國人好像很急,一直叫我趕快寫code 還好他有這樣說,因為這題真的算難,後面follow up卡住了一兩分鐘 跟面試官講述我的想法,但面試官說這不是正確的 其實這個時候應該要請教一下面試官才對,不用執著自己想出來會很浪費時間 不過當下時間有點緊急所以不知為何就沒有討論 後來就果斷用暴力法,寫的過程直接暴打一波code寫完 後續也有問我如果有環要怎麼解決 這題表面上是string實際上牽扯到graph的題目 ## Onsite 第三場 這一關是台灣的小哥,一開始自我介紹感覺聊了快10分鐘才開始 他對我工作內容有興趣,因為剛好做類似的事 然後就直接出了一題簡單的tree題 秒解完後,發現這個時間複雜度不是最佳的 不過面試官說先dry run+test 講test花了快10分鐘 期間問了跟刷題不太有關的偏向實務,比如怎麼造case 會怎麼設計testcase,花了不少時間在這 後來follow up的優化卡了許久 也跟面試官要了提示,但好像沒有get到 後來發現那個優化非常非常的簡單... 事後才想到 後續進行15min Q&A =============================================================== # Nvidia 其實本來只打算面G,不過Linkedin被一位大大敲了,剛好就來面面看 投遞Senior Software Engineer, DFX CAD 整體面試時間也是非常的長 總共面了7關 ## timeline - 9/18 內推 - 9/22 phone interview - 10/12 phone interview 告知passed - 10/27 phone interview x2 - 11/8 onsite interview x2 - 11/28 onsite interview 告知passed - 12/1 phone interview - 12/15 phone interview - 1/11 reference check + 體檢 - 2/3 offer letter - Feedback ## phone interview (1) 資深工程師,一開始先做自我介紹 主要就是問我履歷問題,工作的內容 問我為何想要跳槽 這邊因為聊了快半小時,我就問了一下是不是不用考codeXD 所以就簡單的考了tree的inorder走訪,我把三種走訪方式都說了一遍 也問了一些基礎知識,比如說什麼情況不能還原出tree 後來也問了c++的一些基礎知識,copy constructor, move 整體回答完,時間很充裕就繼續聊 聊了許多關於公司的福利,工作的內容 自己擅長的技能是什麼 也問我為何不想出國等等 還說遇到大主管機率比遇到老黃還低XD 整體聊了一個半小時,當下覺得就會進到下一關XD 面試官有說表現的不錯的話可能會面個5-6關 表現不好就面一兩個 這個面試官給人感覺挺不錯的跟我聊了不少細節 ## phone interview (2) 接下來連續兩場phone,但我有問了一下面試官這個到底是phone還是onsite 不過其實好像沒什麼分,考的東西差不多 一樣做了自我介紹做了簡單的QA 接著就用hackerrank考一下程式 第一題是考`c++`的物件導向實作 第二題是arr的相關題,從暴力法一路優化到最佳解 第三題是簡單的graph題,dfs一下就能解決了 透過這些測驗面試官大概就會知道我`c++`了解的程度 有一些比較clean的寫法auto deduce, lambda(面試官說了傳統作法可能要寫好多行) 整體時間掌握充裕 有問了一下`c++`支援程度,好像只到`c++11`而已 接著好像就是換我提問的環節 大概問了工作內容,感覺蠻有趣的,有用到一些演算法 ## phone interview (3) 一樣自我介紹5~10min 接著進入coding 第一題題目意思看了很久,大概是array, dp類型 面試官有跟我討論比較乾淨的做法但是時間複雜度、空間複雜度差不多 第二題蠻有趣的greedy題 先分析了題目的規則、列了一些算式,然後大概佐證了一下這個假設 不過後來這個假設testcase不會過 接著就有發現的一些trick,但這邊很好笑的是我陣列計算錯誤 debug了一下下,面試官跟我都沒發現錯誤,想法dry run都是對的 後來成功找到錯誤submit也是全過的 面試官問了`c++17`有甚麼新語法,大概就是說了一下structure binding, optional optional的error handle行為有稍微講錯 不過面試官說反正那上網查就有了好像沒有扣甚麼分 這兩場的feedback自己都覺得很正面 ## onsite interview (1) 來到新竹的辦公室,廁所很乾淨 來的時候發現我跟面試官搭同個電梯(電腦螢幕開著面試者的履歷XD) 不過我當然是沒認出來 開場先做個自我介紹聊天 接著考了手寫的白板 一題大概是跟區間線段有關 另外一題是重疊有關的問題,hashtable就能搞定 這兩題很快寫完之後,面試官問你怎麼沒有去面谷歌? 整場幾乎都在Q&A,讓我印象很深刻 因為他問的問題都非常有趣XD 主要圍繞在我為何跳槽 比如nv的錢都是股票,如果來的時候股票雪崩怎麼辦 谷歌假如上了會不會就跳槽了XD等等 蠻喜歡這位面試官帶出一些有趣層面的思考 整體來說時間充裕還剩5分鐘 feedback是覺得蠻正面的 ## onsite interview (2) 這關是主管,開場先擦擦黑板 主管手上拿著紙本履歷,大概就是帶過一下履歷 聊聊天之後 接著就考coding 第一題蠻有趣的主管說這是內部的實作 不過他不確定怎麼做的就來考我看我怎麼寫 是一道tree的題目,裡面的節點可以自己定義 想了一下,後來用了類似dp的方式解決了 第二題是第一題的follow up 寫完之後,時間還剩一半 主管就再考一題很典型的題目 這邊大概提出了三到四種解法, 不過線性解實作很tricky我沒深入理解,但我知道複雜度一樣的stl簡單作法 後來主管就直接在白板上解釋線性解的證明 整體來說feedback也不錯,然後主管說headcount好像剩一個 不過最終一波三折用了其他職位的缺給了我名額,進入後續 ## phone interview (4) 這關我以為是工程師,後來才知道是主管XD 主要圍繞我的履歷,問我履歷上的問題 大概聊了30分鐘,問了我為何想跳槽 我問了他,這邊的工作環境跟工時如何 我自認為我前公司大概60分,這邊可能90分(工時的部分) ## phone interview (5) 有趣的大主管,主要聊工作相關的話題 這個主管是大陸人很像官神的聲音... 問了人的頭髮有幾根怎麼計算? 這邊我有回答計算方式,不過我跟他說我忘記了表面積的計算公式 聊人格特質 比如說會不會有自己的idea 分配打雜的時候怎麼辦 工作做不出來怎麼辦 以及平常的工作模式 ## Feedback 整體來說是一個很長的面試,中間一度以為沒機會,因為拖了很久 而且還有headcount的問題,後來的面試是發另外一個缺給我 還跟主管HR聊了一下,解開誤會,然後薪水很敢給XD
愛心
跪
嗚嗚
1210
165
全部留言