NiceOffer

面试面经 · Google

【Google】【Software Engineer】【New Grad Onsite】三轮 Onsite,两道 Coding + 一轮 Behavioral,节奏刚好

GoogleSoftware EngineerNew Grad面经Onsite

【Google】Software Engineer New Grad Onsite

基本信息

项目内容
公司Google
岗位Software Engineer (New Grad, L3)
轮次Onsite(三轮)
时间2025
面型体感整体节奏紧凑,面试官专业,Behavioral 轮比想象中轻松
结果Offer

面试题目(按提问顺序)

Round 1:Coding Interview(45 min)

  1. 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:如果要求返回具体的子串内容(而不仅是长度),如何修改?
  1. Trapping Rain Water(LeetCode #42)
  • Given n non-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)

  1. Course Schedule II(LeetCode #210,拓扑排序)
  • There are n courses labeled from 0 to n-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:如果图有环,如何检测并输出环的路径?
  1. 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)

  1. 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.)
  • 面试时先和面试官确认题意、举例说明输入输出,再开始写代码