[心得] 台積電到 Google TE/SWE - 職涯經驗分享

看板Soft_Job (軟體人)作者 (大熊)時間5月前 (2024/05/30 14:23), 5月前編輯推噓23(24111)
留言36則, 32人參與, 5月前最新討論串1/1
網路上有關 Google Software Engineer (SWE) 的分享很多, 但很少關於 Test Engineer (TE) 面試和工作內容的討論。 因為我的工作經驗包含了半導體 (台積電) 到 Google TE 和 SWE, 希望能分享一路的過程給大家不同的職涯發展選擇。 [背景] 2015 - 2021: tsmc - Engineer in Process Development Kit Department 2021 - 2024: Google - Test Engineer in Pixel 2024 至今: Google - Software Engineer in Pixel [Google - Test Engineer 面試] 2020 年開始嘗試,經過了兩次面試後才拿到 offer。 面試時我都使用 Python,後面就不贅述。 第一次在 Phone Interview 就被刷掉, 理由是 Coding Style 和 Readability 有待加強。 所以後來針對 Python idioms 和 Google Python Code Style 補強, 間隔六個月後在 21 年又挑戰一次。 第二次面試過程 Phone Interview: Code Interview + Test planning 面試官只問了基本的 Python 、 DS 問題和測試基本概念就過了, 完全出乎意料的輕鬆。 Onsite 1 - Code Interview + Test Planning 一題 leetcode medium 的問題,沒有 follow up。 面試官重點放在 automation tests 的 best practice, test pyramid 和 test flakiness 的觀念。 Onsite 2 - Code Interview, General DS and Algorithm 1 題 leetcode easy + 2 題 leetcode medium 的題目。 印象深刻的是考了一題偏難的 Dynamic Programming 問題, 需要充分練習,不然很難在 45 分鐘全部實作。 Onsite 3 - Test Design and Planning 類似 SWE 的 System Design。 給定一個情境,要求設計 Test Plan 和 Test Cases。 對於測試規劃和不同測試方法要有一定程度的了解, 常用的專有名詞要記得並能正確的使用在測試計劃中。 Onsite 4 - Googleness behavior question 略 結果: 面試完當天就拿到 Offer 。 [Google - Software Engineer] 工作快兩年後想嘗試不同的挑戰,所以開始準備轉職成 SWE。 在 Google 有兩種方法可以轉換職稱 (Role Transfer): 1. Job Ladder Transfer 和一般面試相同,找到想應徵的內部職缺後進行 2 ~ 3 場的 Onsite Interviews。 TE 算在 Technical Domain Experience,所以只需要 2 場面試。 2. Job Ladder Alignment 不需要面試。只要過去一年工作的內容和 SWE 的職責有高度相關, 並且在主管願意推薦的情況下就可以直接轉職。 第一次面試 - Software Engineer in Android 應徵了在美國東岸合作過的 Android 團隊職缺,順利得到面試機會。 Onsite 1 - Code Interview, General DS & Algorithm Graph 相關問題,表現得沒有很好。 花了太多時間解第一題後沒有完成所有的 follow ups。 最後拿到了 LH (Leaning Hire) 的評價。 Onsite 2 - Code Interview, General DS & Algorithm Dynamic programing 相關問題。 基本題為 leetcode medium 的題目, follow ups 兩題, 一題 medium 一題 hard,都有順利解完。 拿到了 SH (Strong Hire)。 結果:HR 看完成績後,認為兩場的評價落差有點大。 但新團隊願意推薦我,所以還是可以進入下一步 (Hiring Committee)。 不過 22 年底開始大裁員,head count 突然被凍結後 就不了了之。 第二次 - Job Ladder Alignment as SWE in Pixel 由於在 23 年接手了 Test Infrastructure 開發的工作, 累計了約 20,000 行程式碼,並且考績都在平均以上, 在 team leader 的推薦下直接轉成 SWE。 [關於 TE] Google 的 TE 對於程式能力還是有一定的要求, onsite interviews 至少要有一場是由 SWE 面試。 因此很常遇到面試者的測試經驗豐富,但在 Code Interview 被刷掉的情況。 但相較於 SWE,TE Code Interview 的難度比較低, 通常只要能在 15 ~ 20 分鐘內解完 Leetcode Midium 的題目都能順利過關。 而測試相關的題目網路上有不少資源可以參考, 所以對於目標是 SWE 的面試者來說準備起來相對容易。 如果目標是加入 Google 的話,TE 不失為一個好選擇。 而 TE 的薪資和 SWE 相當接近,差距應該在 10% 上下。 不過 TE 的缺點是工作上免不了手動測試, 大概只有 40% ~ 50% 左右的時間可以專注在程式開發。 在新功能發佈前,能夠寫程式的時間可能會更少。 但程式碼的貢獻會影響年度考績,如何在工作上取得平衡是 TE 需要面對的挑戰。 另一方面,如果你的目標是朝向 SWE 發展,TE 當作過渡階段還是可以提供不少好處。 例如公司內部免費的 Career Coach 諮詢和 Code Interview 題庫等。 並且 Job Ladder Transfer 僅需要兩場 Code Interview,大大增加了通過面試的機會。 [關於內轉] Google 內部兩種不同的轉職方式各有優缺點。 Job Ladder Transfer 雖然需要面試,但準備方向簡單並且可以自由選擇想加入的團隊。 不過缺點一樣是需要花費心力練習,不然還是很容易被刷掉。 而 Job Ladder Alignment 雖然不用面試, 但要找到適合的專案並累積足夠多的程式碼需要相當多額外的精力。 並且要有主管的支持,在轉職後短時間內不太容易換團隊。 值得一題的是,在 Google 內部有相當多的資源可以幫助你準備面試。 有很多志願的 Career Coach 願意幫忙免費提供 Mock Interview 並指導你技巧。 我在準備面試期間就至少進行了 3 場 Mock Interviews,比起自己準備的確輕鬆不少。 題外話,個人感覺 Google 台灣和美國面試官的風格差別滿多的。 台灣的面試官多半很要求實作的熟悉度和速度, 45 分鐘內沒有完成含 follow ups 三題左右的題目就很容易被刷掉。 但美國的面試官會花比較多時間在討論問題,就算只完成一題, 只要面試者邏輯清楚、脈絡明確,還是可以拿到不錯的評價。 當然這不是絕對的就是了。 [結語] 就工作來說,Google TE 是一個不錯的選擇。 不過一般會花心力練習 Leetcode 和準備 Code Interview 的面試者, 通常都是將 SWE 當成目標,所以不太會考慮 TE。 我也是因為在台積電工作的背景而被 HR 推薦的情況下才嘗試了 TE 這條路。 如果目標是加入 Google 但還需要更精進程式的話,可以考慮看看 TE。 或許能在求職的過程推你一把。 希望我的經驗能幫助到你,願每個人都可以找到心目中理想的工作。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.115.148.239 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1717050203.A.347.html

05/30 14:25, 5月前 , 1F
推 強者中的強者
05/30 14:25, 1F

05/30 14:48, 5月前 , 2F
test上swe強強強
05/30 14:48, 2F

05/30 14:52, 5月前 , 3F
05/30 14:52, 3F

05/30 15:58, 5月前 , 4F
推 用心分享
05/30 15:58, 4F

05/30 16:23, 5月前 , 5F
推,超強
05/30 16:23, 5F

05/30 16:48, 5月前 , 6F
感謝分享,也是 TE 想追尋前輩腳步前進!
05/30 16:48, 6F

05/30 16:57, 5月前 , 7F
推分享,最近一堆強者的文章
05/30 16:57, 7F

05/30 17:07, 5月前 , 8F
TE轉SWE 薪水有變多嗎?
05/30 17:07, 8F
剛轉過去時幾乎沒有差別。

05/30 17:08, 5月前 , 9F
用心推,感謝分享
05/30 17:08, 9F

05/30 18:11, 5月前 , 10F
推分享
05/30 18:11, 10F

05/30 19:15, 5月前 , 11F
台灣面試官的經驗跟我以前經驗相符,像是出考卷一樣,
05/30 19:15, 11F

05/30 19:15, 5月前 , 12F
只是來對答案的,標準答案和成見已經在心中,很難溝通
05/30 19:15, 12F

05/30 19:15, 5月前 , 13F
討論
05/30 19:15, 13F

05/30 19:17, 5月前 , 14F
不否認我菜,改變不了別人,只好加強自己,學個經驗
05/30 19:17, 14F
※ 編輯: lollypop02 (59.115.148.239 臺灣), 05/30/2024 19:41:47

05/30 21:44, 5月前 , 15F
讚!感謝分享
05/30 21:44, 15F

05/30 23:05, 5月前 , 16F
推分享
05/30 23:05, 16F

05/30 23:25, 5月前 , 17F
G工程師薪水雷面試又像俄羅斯輪盤
05/30 23:25, 17F

05/30 23:33, 5月前 , 18F
05/30 23:33, 18F

05/30 23:51, 5月前 , 19F
推推
05/30 23:51, 19F

05/30 23:57, 5月前 , 20F
G起碼400萬起跳
05/30 23:57, 20F

05/31 05:06, 5月前 , 21F
樓下會說沒有400萬你補嗎 xD
05/31 05:06, 21F

05/31 07:06, 5月前 , 22F
推,很棒的分享
05/31 07:06, 22F

05/31 07:07, 5月前 , 23F
放棄半導體1730下班 是不是想不開啊
05/31 07:07, 23F

05/31 09:17, 5月前 , 24F
好厲害
05/31 09:17, 24F

05/31 12:51, 5月前 , 25F
我沒有四百萬我廢物
05/31 12:51, 25F

05/31 21:44, 5月前 , 26F
台G…87趴的L4應該都沒400吧??
05/31 21:44, 26F

06/01 09:45, 5月前 , 27F
推測試!謝謝你的分享,希望之後用得上
06/01 09:45, 27F

06/01 10:35, 5月前 , 28F
請問您 刷題用Python ,工作上主要也是Python 嗎?
06/01 10:35, 28F
準備和面試選擇用 Python 主要是因為易用和可讀。 因為工作內容的關係,常用的語言是: Java, Kotlin, Python, TypeScript, Go 以前在台積電的話還有: Perl, PHP, Javascript

06/01 11:53, 5月前 , 29F
恭喜你,地獄G與天堂G的差別
06/01 11:53, 29F
老實說在 GG 的工作並沒有不好 至少工時滿正常的,也有不少有趣的題目可以做。 最大的差別只是開放的工作風氣

06/02 03:07, 5月前 , 30F
請問科系是電子電機還是純資工呢? 很少聽到GG到G的 羨慕~
06/02 03:07, 30F
大學和碩士都是唸資工系 其實這兩年從半導體到 Google 的人不少 也有部份是從 GG 來的。 ※ 編輯: lollypop02 (59.115.148.239 臺灣), 06/02/2024 08:55:49

06/02 17:56, 5月前 , 31F
強喔
06/02 17:56, 31F

06/02 20:07, 5月前 , 32F
好奇原po沒測試相關經歷,Test planning/Auto這些怎
06/02 20:07, 32F

06/02 20:07, 5月前 , 33F
麼能過關?
06/02 20:07, 33F

06/03 01:43, 5月前 , 34F
21年的hiring bar不是現在能比的
06/03 01:43, 34F

06/04 14:43, 5月前 , 35F
06/04 14:43, 35F

06/05 10:34, 5月前 , 36F
推推推
06/05 10:34, 36F
文章代碼(AID): #1cM1jRD7 (Soft_Job)
文章代碼(AID): #1cM1jRD7 (Soft_Job)