这些是我当时准备 Google 软件工程师面试留下的笔记,后来又陆续改过,就是那种 LeetCode 式的面试,最后还有招聘委员会,电话筛选,编程,系统设计,行为面试,整套我都经历了,所以除了遇到的题,流程是怎么回事也一起记了下来。
Google 这套面试一直有人认可,也有人很讨厌,我当时觉得无非就是两种选择,你可以一直说这个流程像抽签,也可以先逼着自己去学,去看它这套东西到底怎么运作,我选的是后者。
不过 Google 跟普通面试确实有个很不一样的地方,第一次通话招聘人员就跟我说,五年里只能试三次,三次之后他们就不再接受,整个职业生涯就这三次,我后来把这个事告诉以前的同事,他大概五秒都没说话,那五秒我当然知道是什么意思,就是让我千万不要搞砸。
我把笔记分成了几块:
- 电话筛选
- 编程
- 系统设计
- Googleyness and Leadership
- 招聘委员会
- 模拟面试,以及我用过的工具
- 团队匹配
电话筛选
Google 的电话筛选是在共享 Google Doc 里做的。不是 IDE,就是一份纯文本文档,没有语法高亮,也没有自动补全。有人看着你打字,你要在里面写四十五分钟真正能用的代码。我碰到一道滑动窗口题和一道二分查找变体,都是中等难度。
Ready to ace your next interview?
InterviewMan gives you real-time AI answers during live interviews — undetectable on Zoom, Meet, and Teams.
Try InterviewMan Free平时写程序,我会不停试,边写边修。可只给四十五分钟,面前又是一份朴素的 Google Doc,还有一双眼睛盯着每次输入,这一套就行不通了。真希望有人在筛选前告诉过我,要在 Doc 里写题。
还有个流程细节,是我后来才知道的。如果筛选面试官拿不准,他们不会马上拒绝,而是再给一次电话筛选。我认识两个人遇到过这种情况,其中一个来自编程训练营的 Discord。两个人都在第二次通过了。
编程
正式面试前,我硬刷了 200 道 LeetCode。帮助没有想象中大,倒不是因为题太难。
Google 的编程题,当时我觉得难的不是写代码,是先要看出这道题到底在问什么,因为面试官故意会放进去很多背景,还有一些根本没用的东西,以前的同事早就跟我说过,但是我当时没有当回事。有一道题我听完就觉得是熟悉的模式,直接就开始做了,做到第八分钟才发现自己解的根本是另一道题,只能回去重新开始,而且这道题听起来真的就是我前一晚练的滑动窗口,其实不是,面试官八分钟一句话都没有,就那样看着我做错的题。面试完我在停车场给同事打了电话,他说对啊,我不是早就告诉你了。
这段我最后就留了三条:
- 每一秒都要把思路说出来
- 多练组合题
- 别因为前一晚刚练过某个模式,就急着套上去
把思路说出来这个事确实很重要,因为委员会看的是面试官写的材料,而面试官只能写你当时说了什么,有一道图的题我一直没有说话,后来反馈里就写我推理不清楚,但是我当时知道自己在做什么,我没说,别人当然不知道。后来同事看了那份材料,说你其实是解出来了,他们却把你写得像是一直在猜。
还有就是组合题,Google 有一轮问我的是图动态规划,另外一轮是树和 hashmap,单独的二分查找或者单独的 BFS 几乎不会这样出,所以你刷五百道一道归一道的中等题,效果反而不如五十道组合题,这个是我浪费了三个周末,每个专题分开刷完以后才想明白的。
系统设计
系统设计只有一轮,而整轮面试可能就系在某一个设计选择上。我的备考教练把它叫作“支点洞察”。当时我觉得这说法太夸张,后来发现他说得没错。我的题是分布式系统,那个关键点是缓存失效,我差三十秒就错过了。没抓到它,讨论便始终停留在图示表面,三次机会中的一次也就白白没了。
Googleyness and Leadership
Googleyness and Leadership 听着很玄,其实就是行为面试,聊团队冲突、项目失败和主人翁意识相关的经历。有位面试官跟我说,有些委员会成员几乎不看材料里的这一部分。照样要准备,因为委员会由谁组成,不是你能选的。
招聘委员会
去 Google 面试像抽签,招聘委员会把这一点落实得很彻底。四五个从没见过我的工程师,只能根据面试官留下的材料决定我的结果。陌生人读着另一群陌生人写下的、关于我的笔记。我同事认识一个人,前后去 Google 面了两次,每次遇到的委员会成员不同。表现基本一样,结果却完全不同。
模拟面试
比起任何题目清单,模拟面试更能让人熟悉那些流程门道。我请以前的同事当面试官,我们通过 Google Meet 把每一轮完整走了一遍。
这里我算是走了捷径。我就在 InterviewMan 工作,所以模拟时也开着自家工具,照真实候选人的用法来。它会通过音频听到题目,再把解题建议放到只有你能看见的浮层上。同事花了五分钟找它,查共享画面、我的 dock,又看了面试录像,什么也没看到。模拟 Googleyness 那一轮,它从谈话里捞出了一段我早已忘干净的冲突经历。委员会据说不太看这种故事,可材料里又不能没有。模拟系统设计时,它还提醒了一个缓存方面的关键点,后来证明那正是那道题的支点。
再说工具本身。Interview Coder 这类只管编程的工具,每月要 two ninety nine。五轮里它们只覆盖三轮,到了系统设计和行为面试,你还是得自己扛。InterviewMan 五轮都能管,年付方案每月 twelve bucks。我准备了三个月,一共花 thirty six dollars,还不到 Interview Coder 一周的费用。现在我们有 fifty seven thousand users,提供 twenty plus stealth features。据我所知,还没人因此被抓到。
团队匹配
委员会点头,并不等于拿到 offer。之后还有团队匹配,你和招聘经理双方都得同意,而委员会的批准大约一年内有效。所以不用急。我在整个过程中听到过最好、也有点反直觉的一条建议是:等到那个你真的愿意每天醒来为之工作的团队。
Ready to Ace Your Next Interview?
Join 57,000+ professionals using InterviewMan to get real-time AI assistance during their interviews.

