[心得] 台积电到 Google TE/SWE - 职涯经验分享

楼主: lollypop02 (大熊)   2024-05-30 14:23:21
网络上有关 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。
或许能在求职的过程推你一把。
希望我的经验能帮助到你,愿每个人都可以找到心目中理想的工作。
作者: cmelo1515 (瓜农)   2024-05-30 14:25:00
推 强者中的强者
作者: holebro (穴弟弟)   2024-05-30 14:48:00
test上swe强强强
作者: AgileSeptor (S.Duncan_JB)   2024-05-30 14:52:00
作者: Jobaba (自然)   2024-05-30 15:58:00
推 用心分享
作者: hobnob (hobnob)   2024-05-30 16:23:00
推,超强
作者: blade123 (blade123)   2024-05-30 16:48:00
感谢分享,也是 TE 想追寻前辈脚步前进!
作者: rdg1231   2024-05-30 16:57:00
推分享,最近一堆强者的文章
作者: tbpfs (http://0rz.tw/Uk989)   2024-05-30 17:07:00
TE转SWE 薪水有变多吗?
作者: jackflu (jackflu)   2024-05-30 17:08:00
用心推,感谢分享
作者: wizozd84070   2024-05-30 18:11:00
推分享
作者: ke265379ke (山王泽北)   2024-05-30 19:15:00
台湾面试官的经验跟我以前经验相符,像是出考卷一样,只是来对答案的,标准答案和成见已经在心中,很难沟通讨论不否认我菜,改变不了别人,只好加强自己,学个经验
作者: Tix (Sean Chen)   2024-05-30 21:44:00
赞!感谢分享
作者: viper9709 (阿达)   2024-05-30 23:05:00
推分享
作者: pig2014 (Rocking Man)   2024-05-30 23:25:00
G工程师薪水雷面试又像俄罗斯轮盘
作者: pha123661 (pha123661)   2024-05-30 23:33:00
作者: rickykai (凯)   2024-05-30 23:51:00
推推
作者: Csir (张胖胖)   2024-05-30 23:57:00
G起码400万起跳
作者: MIKEmike07 (加油!)   2024-05-31 05:06:00
楼下会说没有400万你补吗 xD
作者: rereterry (rereterry)   2024-05-31 07:06:00
推,很棒的分享
作者: f12sd2e2aa (XS)   2024-05-31 07:07:00
放弃半导体1730下班 是不是想不开啊
作者: duck10704 (duck)   2024-05-31 09:17:00
好厉害
作者: gcobs0834 (gcobs0834)   2024-05-31 12:51:00
我没有四百万我废物
作者: LinuxKernel (Linus Torvalds)   2024-05-31 21:44:00
台G…87趴的L4应该都没400吧??
作者: single4565 (leekdumpling韭菜水饺)   2024-06-01 09:45:00
推测试!谢谢你的分享,希望之后用得上
作者: Zoanthropy ($$)   2024-06-01 10:35:00
请问您 刷题用Python ,工作上主要也是Python 吗?
作者: EKman (攻略)   2024-06-01 11:53:00
恭喜你,地狱G与天堂G的差别
作者: saladim (杀拉顶)   2024-06-02 03:07:00
请问科系是电子电机还是纯资工呢? 很少听到GG到G的 羡慕~
作者: strlen (strlen)   2024-06-02 17:56:00
强喔
作者: finalshinji (finalshinji)   2024-06-02 20:07:00
好奇原po没测试相关经历,Test planning/Auto这些怎么能过关?
作者: stkoso (Asperger)   2024-06-03 01:43:00
21年的hiring bar不是现在能比的
作者: Lightten (Lightten)   2024-06-04 14:43:00
作者: eeleader (领航员)   2024-06-05 10:34:00
推推推
作者: Samael (炽天使(Male))   2024-06-08 07:43:00
lvs 还是pdk? 厉害
作者: amyt (amyt)   2024-06-17 09:27:00
谢谢分享

Links booklink

Contact Us: admin [ a t ] ucptt.com