Google 面试问题:都会问什么,如何备考
作者 Aaron Cao · 更新于

Google 会针对不同职位提出开放式问题,并用同一套评分标准评估每一位候选人:工程师要解答编程与系统设计题,产品经理和数据岗位要应对产品与数据分析案例,团队协作类问题则是所有人都会遇到的。Google 表示面试中不会有脑筋急转弯,也不允许在面试过程中使用 AI 工具。
Google 会问哪些类型的问题?
大多数搜索 Google 面试问题清单的人,担心这份清单是保密的或者很古怪。其实都不是,本节将说明各轮面试实际考察的内容,让这份清单变得有意义。Google 将其面试描述为结构化面试:面试官会针对该职位提出开放式问题,并用同一套评分标准为每位候选人打分。Google 还明确表示不使用脑筋急转弯题目。
实际上,这些问题大致可分为以下几类:
- 招聘人员沟通:你的背景、为什么选择这个团队、你想做什么样的工作,以及各项后勤安排。
- 岗位知识:工程师的编程与算法题,产品经理的产品判断力与指标分析,以及数据岗位的 SQL、统计学与实验设计。
- 解决问题:开放式问题,面试官关注的是你如何拆解问题、权衡各种方案。
- 团队协作与领导力:关于冲突、不确定性、非职权影响力,以及从失败中学习的行为面试问题。
如需查看整个流程各阶段的详细说明,各公司面试流程页面分别介绍了每家雇主的具体情况。
Google 的编程与系统设计问题是什么样的?
编程问题通常是在共享编辑器或文档中解决的数据结构与算法题:数组与字符串、哈希表、树与图、递归、动态规划,以及复杂度分析。面试官通常会在你的第一个方案奏效后追加一个后续问题,比如更大的输入规模、内存限制,或者变化的需求。在动手写代码之前先讲清楚思路,和最终代码同样重要。
经验丰富的工程师还会遇到系统设计问题:设计一个短链接服务、一个限流器、一个信息流,或者一个文件存储服务。这些问题考察需求梳理、数据建模、扩展性选择,以及每个权衡背后的理由。Google 表示,扎实的计算机科学基础是其软件工程岗位的核心要求,因此基础知识比死记硬背的答案更重要。
一位准备 Google 面试的后端工程师,可能会花一周时间从零重新推导图遍历算法,再花一周时间对着计时器把两道系统设计题讲清楚。这种“说出声”的练习恰恰是大多数人独自备考时会跳过的部分,也正是评分标准真正在考察的内容。
产品、数据与行为面试问题是什么样的?
产品经理会遇到诸如“你会如何改进 Google 地图的通勤体验?”“这个功能上线后你会关注哪个指标?”或者“为我们服务不足的用户群体设计一款产品”这样的问题。数据科学家和分析师则会遇到指标定义、实验设计、SQL,以及如何解读意外结果之类的问题。
行为面试问题适用于所有职位。典型例子包括:“说说你和同事意见不合的一次经历”“描述一个目标不明确的项目”,以及“说说你犯过的一个错误,以及之后有什么改变”。清晰的结构会很有帮助;STAR 方法(情境、任务、行动、结果)能让答案具体而简洁。其他职位和主题的题库见按职位与主题分类的面试问题。