面试面经 · Google
【Google】【Software Engineer】【New Grad Onsite】三轮 Onsite,两道 Coding + 一轮 Behavioral,节奏刚好
【Google】Software Engineer New Grad Onsite
基本信息
| 项目 | 内容 |
|---|---|
| 公司 | |
| 岗位 | Software Engineer (New Grad, L3) |
| 轮次 | Onsite(三轮) |
| 时间 | 2025 |
| 面型体感 | 整体节奏紧凑,面试官专业,Behavioral 轮比想象中轻松 |
| 结果 | Offer |
面试题目(按提问顺序)
Round 1:Coding Interview(45 min)
- Longest Substring Without Repeating Characters(LeetCode #3 变体)
- Given a string
s, find the length of the longest substring that contains no repeating characters. - 解法:Sliding Window 经典题,用 HashSet 或 HashMap 记录窗口内字符,左右指针推进。
- Follow-up:如果要求返回具体的子串内容(而不仅是长度),如何修改?
- Trapping Rain Water(LeetCode #42)
- Given
nnon-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining. - 解法:双指针法或前缀最大值法,时间复杂度 O(n),空间复杂度 O(1) 或 O(n)。
Round 2:Coding Interview(45 min)
- Course Schedule II(LeetCode #210,拓扑排序)
- There are
ncourses labeled from0ton-1. Given prerequisite pairs, return the ordering of courses you should take to finish all courses. If impossible, return an empty array. - 解法:构建有向图,计算每个节点的入度,用 BFS(Kahn 算法)进行拓扑排序。
- Follow-up:如果图有环,如何检测并输出环的路径?
- Serialize and Deserialize Binary Tree(LeetCode #297)
- Design an algorithm to serialize a binary tree to a string and deserialize a string back to a binary tree.
- 解法:用前序遍历(DFS)序列化,用递归 + 全局索引反序列化。
Round 3:Behavioral / Googleyness(45 min)
- Behavioral Questions(面试官随机提问,约 5-6 题)
- "Why Google?"
- "Tell me about the most technically challenging project you've worked on."
- "Describe a time when you faced a tight deadline. How did you handle it?"
- "Tell me about a time you disagreed with a teammate on a technical decision."
- "What's a skill you're currently working to develop?"
- "How do you approach learning a new technology or framework?"
面试感受 / 反馈
- Coding 两轮都是 2 题 45 分钟,时间压力适中,第一题通常比第二题简单
- 面试官给 hint 比较大方,但需要你展现出对 hint 的理解和快速调整能力
- Behavioral 轮没有想象中那么难,问题都比较常规,不需要特别戏剧化的故事
- Google 对 communication 要求很高——每写一行代码都要能解释清楚 why
- L3 级别没有 System Design 轮,但对 code quality(边界处理、变量命名、代码结构)有要求
准备建议
- Coding:Sliding Window、BFS/DFS、拓扑排序、树序列化/反序列化是高频考点
- Behavioral:准备 3-4 个 STAR 故事,覆盖"技术挑战、deadline 压力、团队冲突、学习成长"
- Googleyness:了解 Google 的核心价值观(Focus on the user, Respect, etc.)
- 面试时先和面试官确认题意、举例说明输入输出,再开始写代码