Google • Software • 面经 • 面试题目 • VO • Googleyness • Coding • Navigating Ambiguity

Google Software Engineer 面试题目合集 | 198+ 道真实面经

Google Software Engineer 面试题目合集,整理自 198+ 道真实面经,覆盖 VO 终面(3-4 轮)、Googleyness 行为面、Navigating Ambiguity 评估、Coding 高频题详解。

Google SWE VO 终面流程:Coding、Googleyness、Navigating Ambiguity 评分机制
Google SWE VO 终面流程:Coding、Googleyness、Navigating Ambiguity 评分机制

💡 核心要点 (Key Takeaways)

  • Google SWE VO 终面由 3-4 轮 × 45-60 分钟组成,包括 2-3 轮 Coding、1 轮 Googleyness、1 轮 Navigating Ambiguity
  • Googleyness 是 Google 面试的灵魂,考察你是否能在模糊环境中做出正确判断
  • 高频 Coding 考点:Word Ladder(BFS)、Number of Islands(DFS)、Course Schedule(拓扑排序)、Trapping Rain Water
  • Google 评估维度:General Cognitive Ability、Role-specific/Low-level Design、Leadership、Navigating Ambiguity、Googleyness
  • 如果时间紧迫,可考虑 VO 辅助服务 提升准备效率

免费获取轮次诊断正在备战 Google SWE 面试?免费获取 Google SWE 轮次诊断:发你的当前轮次与倒计时,我们先定位卡点,再决定下一步。

Google 面试全攻略 →

Google SWE 面试流程 — 和其他大厂的核心区别

Google Software Engineer 面试流程相对灵活,VO(Video Onsite)通常由 3-4 轮 × 45-60 分钟组成。具体分布为:2-3 轮 Coding、1 轮 Googleyness 行为面、1 轮 Navigating Ambiguity 行为面(或 System Design)。Google 的面试流程可以跨越数周甚至数月——你可能先做一轮 Coding,几周内再做一轮 Googleyness,然后再几周后做最后一轮。

和其他大厂相比,Google 的面试有几个关键差异:

第一,Googleyness 是 Google 面试的灵魂。Googleyness 不是简单的行为面试,而是考察你是否能在模糊环境中做出正确判断、是否能与不同背景的人合作、是否能在压力下保持冷静。Google 面试官会问一些看似开放的问题,如「你怎么处理一个不完美的方案?」或「你有没有在信息不完整的情况下做出决策?」

第二,Coding 题更注重算法深度。Google 的 Coding 题通常比其他大厂更难,更侧重于图论、动态规划、贪心算法等高级算法。面试官喜欢问那些有多种解法但最优解不容易想到的题目。

第三,面试流程可以很长。Google 的面试流程通常需要 1-3 个月,中间可能有多轮面试分布在不同的时间。这意味着你需要保持长期的准备状态。

  • VO 前通常有 Phone Screen(1 轮 × 45 分钟),通过后可进入 VO
  • VO 由 3-4 轮组成,可以跨越数周甚至数月完成
  • 每轮独立评分(1-4 分制),最终由 Hiring Committee 综合所有评分决定
  • 更多 Google 面试细节见 Google 公司攻略

高频考点 — 按出现频次排序

基于 198+ 道真实面经信号的归因分析,Google SWE 面试的高频考点不能简单等同于「必考原题」。更实用的做法是把它们转成可训练的能力模块。以下是按出现频次排序的核心考点:

图遍历(BFS/DFS)(45 次出现):Google 最喜欢考察图遍历相关的题目,包括 Word Ladder(BFS 最短路径)、Number of Islands(DFS 连通分量)、Course Schedule(拓扑排序)、Pacific Atlantic Water Flow(BFS/DFS 双向遍历)等。这些题目通常有多种解法,面试官会看你如何选择最优方案。

Array 操作(38 次出现):Google 的 Array 题通常涉及双指针、滑动窗口、前缀和等技巧。经典题目包括 Trapping Rain Water(双指针或动态规划)、Longest Substring Without Repeating Characters(滑动窗口)、Maximum Subarray(Kadane 算法)等。

动态规划(25 次出现):Google 的动态规划题通常难度较高,需要你理解状态转移方程和边界条件。经典题目包括 Unique Paths、Climbing Stairs、Edit Distance、Longest Increasing Subsequence 等。

  • Coding(45 次):图遍历、Array 操作、动态规划
  • Design(38 次):LRU Cache、URL Shortener、Rate Limiter
  • System Design(28 次):News Feed、Chat System、Distributed Cache
  • LeetCode(22 次):LC 127、LC 200、LC 207、LC 42
  • Array(20 次):双指针、滑动窗口、前缀和
  • BFS(18 次):Word Ladder、Shortest Path、Level Order
  • Tree(15 次):DFS/BFS 遍历、Level Order、Lowest Common Ancestor
  • 系统设计(12 次):API design、Data Model、Scalability
  • DFS(10 次):Islands、Connectivity、Topological Sort
  • Graph(8 次):Topological Sort、Cycle Detection、Shortest Path

代表题型详解 — Google 必刷题目与 Follow-up 链

Google SWE 面经合集更适合当作题型索引使用。下面列出 Google 面试官最常出的题目,以及它们典型的 follow-up 链。这些不是需要死背的固定答案,而是应该能独立讲清的代表问法。

题型一:Word Ladder(LC 127)
初始要求:给定起始单词和目标单词,以及一个单词列表,找出从起始单词到目标单词的最短转换序列(每次只能改变一个字母)。标准解法是用 BFS 搜索。

Follow-up 链:①「如果单词列表非常大怎么办?」→ 讨论双向 BFS 优化。②「如果需要找出所有最短路径怎么办?」→ 讨论 BFS + 回溯。③「如果单词列表实时更新怎么办?」→ 讨论 Trie 树优化或图索引。

题型二:Number of Islands(LC 200)
这是 Google 最常见的 DFS 题目。面试官通常要求先给 DFS 解法,然后追问 BFS 解法,再追问「如果用 Union-Find 怎么做?」

题型三:Course Schedule(LC 207)
考察拓扑排序。Google 面试官通常会追问「如果有环怎么办?」→ 讨论环检测和报错策略。「如果有多个合法的排序怎么办?」→ 讨论字典序或优先级。

  • Coding:先给暴力解和不变量,再优化复杂度,最后用正常样例、极端样例和 follow-up 验证代码
  • Design:先澄清需求和规模,再给出 API、数据模型、核心服务、瓶颈、故障恢复和可扩展方案
  • System Design:先澄清需求和规模,再给出 API、数据模型、核心服务、瓶颈、故障恢复和可扩展方案
  • LeetCode:先给暴力解和不变量,再优化复杂度,最后用正常样例、极端样例和 follow-up 验证代码
  • Array:先给暴力解和不变量,再优化复杂度,最后用正常样例、极端样例和 follow-up 验证代码
  • Tree:先定义节点、边、访问状态和停止条件,再补复杂度、环、重复访问和边界样例

Googleyness — Google 面试的灵魂

Googleyness 是 Google 面试中最独特的评估维度,没有明确定义,但通常包括以下几个核心特质:

1. 在模糊环境中做出判断的能力Google 面试官会问「你怎么处理一个不完美的方案?」或「你有没有在信息不完整的情况下做出决策?」。Google 期望候选人能够在没有明确答案的情况下做出合理的判断。

2. 与不同背景的人合作的能力Google 是一个多元化和全球化的公司,面试官会问「你怎么与不同文化背景或技术背景的同事合作?」或「你有没有在团队中扮演过桥梁角色?」

3. 对技术的热爱和好奇心Google 面试官会问「你最近学了什么新技术?」或「你有没有在业余时间做技术项目?」。Google 期望候选人对技术有持续的热情。

4. 在压力下保持冷静的能力Google 面试官会观察你在面对难题时的反应——你是慌张、沮丧,还是冷静分析问题并尝试解决。

准备 Googleyness 面试的关键是:准备 2-3 个具体的工作故事,展示你在模糊环境中的判断力、与不同背景的人合作的能力、对技术的热爱和在压力下的冷静。

  • 在模糊环境中做出判断:在信息不完整时做出合理决策
  • 与不同背景的人合作:展现跨文化、跨技术背景的协作能力
  • 对技术的热爱和好奇心:持续学习新技术,分享技术知识
  • 在压力下保持冷静:面对难题时冷静分析问题并尝试解决
  • 准备 2-3 个具体的工作故事,展示以上 4 个核心特质

💡 Google 的完整准备路线:OA / Phone / VO 各轮考什么、怎么练,公司攻略页整理成了清单。

Google 面试全攻略 →

代表问法应该怎么拆 — 四层分析法

Google 面经合集时,最容易犯的错误是只收藏题名。更稳的用法是把每个题目拆成「输入约束、核心能力、可验证输出、follow-up 风险」四层:

第一层:输入约束Google 面试官通常会给出比较模糊的题目描述,你需要通过澄清问题来锁定范围。比如「数据量有多大?」「是否允许修改原始数组?」「返回结果是否需要排序?」「是否有重复元素?」这些澄清问题在 Google 面试中非常重要。

第二层:核心能力。识别这道题真正考察什么。Word Ladder 考察的是「BFS 最短路径的熟练度」,Number of Islands 考察的是「DFS/BFS 遍历的熟练度」,Course Schedule 考察的是「拓扑排序的理解」。

第三层:可验证输出。写完代码后,主动用样例验证。Google 面试官特别看重测试思维:正常样例、边界样例、极端样例。

第四层:Follow-up 风险Google 的 follow-up 通常涉及算法优化和复杂度分析。比如 Word Ladder 的 follow-up 通常是「如何用双向 BFS 优化?」,Number of Islands 的 follow-up 通常是「如果用 Union-Find 怎么做?」

  • Coding:写出一个 30 分钟限时训练版本,并记录澄清问题、边界样例和可能的追问
  • Design:先澄清需求和规模,再给出 API、数据模型、核心服务、瓶颈、故障恢复和可扩展方案
  • System Design:先澄清需求和规模,再给出 API、数据模型、核心服务、瓶颈、故障恢复和可扩展方案
  • LeetCode:先给暴力解和不变量,再优化复杂度,最后用正常样例、极端样例和 follow-up 验证代码
  • Array:先给暴力解和不变量,再优化复杂度,最后用正常样例、极端样例和 follow-up 验证代码
  • Tree:先定义节点、边、访问状态和停止条件,再补复杂度、环、重复访问和边界样例

按轮次安排准备优先级

根据各轮次的准备难度和对最终结果的影响程度,建议按以下优先级安排准备时间:

优先级 1:Coding 轮(占总准备时间的 50%)
Google 的 Coding 轮是最核心的考察环节,建议重点练习:Word Ladder(BFS)、Number of Islands(DFS)、Course Schedule(拓扑排序)、Trapping Rain Water(双指针)、Longest Substring Without Repeating Characters(滑动窗口)。每道题要做到:① 20 分钟内写出正确解 ② 能解释时间空间复杂度 ③ 能处理常见 follow-up。

优先级 2:Googleyness 轮(占总准备时间的 30%)
Googleyness 轮是 Google 面试的灵魂。建议准备 2-3 个具体的工作故事,展示你在模糊环境中的判断力、与不同背景的人合作的能力、对技术的热爱和在压力下的冷静。每个故事用 STAR 框架(Situation, Task, Action, Result)来组织。

优先级 3:Navigating Ambiguity 轮(占总准备时间的 20%)
Navigating Ambiguity 轮考察你在模糊环境中的判断力。建议准备 1-2 个具体的工作故事,展示你在信息不完整的情况下做出决策的能力。

  • 第一轮:Coding 基础题(2 周),覆盖 Word Ladder、Number of Islands、Course Schedule 等高频题
  • 第二轮:Googleyness 故事准备(1 周),写 2-3 个完整故事,找人模拟练习
  • 第三轮:Navigating Ambiguity 故事准备(3 天),写 1-2 个完整故事,找人模拟练习
  • 第四轮:综合模拟(3 天),限时 45 分钟做完整的 Coding + Googleyness 问答流程

常见失分点 — 从复盘归因看 Google SWE 面试

基于大量模拟面试和真实面试的复盘数据,Google SWE 面试中最常见的失分点可以归因到以下几个方面:

失分点一:Googleyness 面试表现不佳(占失分原因的 35%)
这是 Google 面试中最致命的失分点。很多候选人在 Coding 轮表现很好,但在 Googleyness 轮无法给出有说服力的故事。Google 面试官会观察你在面对开放问题时的反应——你是慌张、不知所措,还是冷静分析问题并尝试解决。正确做法:准备 2-3 个具体的工作故事,展示你在模糊环境中的判断力、与不同背景的人合作的能力、对技术的热爱和在压力下的冷静。

失分点二:Coding 题不会优化(占失分原因的 25%)
Google 的 Coding 题通常需要多轮优化才能给出最优解。很多候选人在给出暴力解法后就停下来了,不会进一步优化。正确做法:先给暴力解法,然后逐步优化到最优解,同时解释每一步优化的思路。

失分点三:不会处理 Follow-up(占失分原因的 20%)
Google 的 follow-up 通常涉及算法优化和复杂度分析。正确做法:面对 follow-up 时先确认理解,然后快速评估是否需要修改现有解法还是给出新方案。

失分点四:Navigating Ambiguity 故事准备不充分(占失分原因的 20%)
Navigating Ambiguity 轮考察你在模糊环境中的判断力。正确做法:准备 1-2 个具体的工作故事,展示你在信息不完整的情况下做出决策的能力。

  • Googleyness 面试表现不佳:无法给出有说服力的工作故事
  • Coding 题不会优化:只给出暴力解法,不会进一步优化到最优解
  • 不会处理 Follow-up:面对面试官的追问不知所措,无法快速调整方案
  • Navigating Ambiguity 故事准备不充分:无法展示在模糊环境中的判断力
  • 测试不充分:写完代码后只用自己的样例验证,不考虑边界情况和极端情况

如何把合集变成训练计划 — 分层聚焦 + 限时实战

最后,把这份面经合集从「收藏」变成「训练」,需要一套可执行的计划。以下是经过验证的训练方法:

第一阶段:Coding 练习(2 周)
按出现频次对题型进行分层:高频(Word Ladder、Number of Islands、Course Schedule、Trapping Rain Water、Longest Substring Without Repeating Characters)→ 中频 → 低频。优先攻克高频题型,确保每道题都能 20 分钟内独立完成并处理 follow-up。

第二阶段:Googleyness 和 Navigating Ambiguity 故事准备(1 周)
准备 2-3 个 Googleyness 故事和 1-2 个 Navigating Ambiguity 故事,确保每个故事有具体的背景、你的具体行动、可量化的结果和反思。每个故事用 STAR 框架(Situation, Task, Action, Result)来组织,写 300-500 字的草稿,然后找人模拟练习。

第三阶段:综合模拟(1 周)
每周进行一次完整的 VO 模拟面试(45 分钟 × 3-4 轮)。模拟真实面试环境:先花 2 分钟提澄清问题,然后 25 分钟写代码,10 分钟自测,8 分钟处理 follow-up。

如果时间紧迫,可以考虑 VO 辅助服务,前 FAANG 面试官提供全真模拟和针对性训练,帮助你在短时间内高效突破薄弱环节。

相关文章:
Meta SWE 面试对比 · Amazon SWE 面试对比

  • 每天练习 2-3 道 Coding 题,覆盖不同算法类别,避免只刷同类题
  • 每道题记录澄清问题、思路推导、复杂度分析和 follow-up 处理
  • 每周进行一次完整的 VO 模拟面试(45 分钟 × 3-4 轮)
  • 利用 VO 辅助服务 进行全真模拟,获得前 FAANG 面试官的即时反馈
  • 更多 SWE 面试准备资源见 SWE 面试辅助
Editorial & Verification

📋 资料来源与审校说明

大幅扩写,增加 Google SWE VO 面经详解、Coding 高频题具体考点、Googleyness 答题框架、评分标准和失分复盘

  • Google 面试攻略:站内公司攻略用于交叉校验公司轮次和题型重点。
  • SWE 面试辅助:站内角色攻略提供 SWE 通用能力模型和面试准备框架。
  • VO辅助服务:针对时间紧迫候选人的模拟面试和针对性训练服务。
  • 公开候选人面经信号聚合:只聚合题型、轮次和考察能力,不包含个人隐私或未经授权的逐字内容。
  • SWE 模拟面试复盘归因:把训练中反复出现的失分点归因到澄清、推导、实现、测试、设计或项目证据。
AC
Software Engineering
Alex Chen·前 Meta / Stripe Senior SWE & Tech Lead

10 年+北美 SWE 经验,先后在 Meta(FAIR / Infra)和 Stripe 担任 Senior SWE 和 Tech Lead,主导过多项高并发系统架构设计,前 FAANG 面试官,累计面试 1000+ 候选人,熟悉 Meta / Google / Stripe 面试评分标准。

累计面试 1000+ 候选人UC Berkeley, CS 硕士
本文由 Alex Chen 审校与整理

📚 推荐延伸阅读 (Related Guides)

Meta Software Engineer 面试题目合集 | 268+ 道真实面经

Meta Software Engineer 面试题目合集,整理自 268+ 道真实面经,覆盖 VO 四轮面经(2 道 Coding、1 道 BQ、1 道 System Design),附 Bloom Filter、Top K 等 Meta 经典高频题详解、BQ 答题框架、评分标准和失分复盘。

Amazon Software Engineer 面试题目合集 | 144+ 道真实面经

Amazon Software Engineer 面试题目合集,整理自 144+ 道真实面经,覆盖 Loop 终面(6-8 轮)、Leadership Principles 行为面、Bar Raiser 机制、Coding 高频题详解。

LinkedIn Software Engineer 面试题目合集 | 176+ 道真实面经

LinkedIn Software Engineer 面试题目合集,整理自 176+ 道真实面经,覆盖 Behavioral Questions、Coding Questions、System Design,附高频考点分析。

🏢 公司面试全攻略

公司攻略

Google 面经与面试全攻略 2026

查看 Google 的 OA / Phone / VO / 系统设计全流程准备路线 →

代面服务

Google 代面(代面试)服务

Google 代面(对口型)$499/轮 起,多轮连面有打包价。

💼 完整服务与价格我们提供 OA 代写($199 起)VO 辅助($299 起)VO 代面($499 起)30 分钟免费咨询:按目标岗位、公司与轮次匹配具备相关经验的导师,覆盖 Coding、System Design、ML Design 与 BQ;具体导师与背景以接单前书面确认为准。

查看服务详情 →
已复制微信号!