刚结束我在 NYC office 面的 Google data engineer 面试 loop(L5)。分享一下拆解,因为我在 2026 年初准备的时候完全找不到靠谱的近期帖子。
整个 loop 是 5 轮加一场 hiring manager chat。每一轮大概是这样:
Coding(x2): 体感是 LeetCode medium-hard,但两题都很偏 data。一题是处理事件流并计算 rolling window 的聚合。另一题是图遍历,放在 DAG pipeline 的依赖解析场景里。就算你是纯 SQL,也别跳过图题。
SQL/Analytics: 这轮有点出乎我意料。他们给了 4 张表(users、sessions、events、conversions),让我写逐步更复杂的查询。先是基础 join,然后窗口函数,然后问一个效率问题:怎么改写某个 query 来避免 full scan。这轮我最有把握,但他们会问得很深。PARTITION BY 要非常熟。
System Design(data): 设计一个 pipeline,实时接入 clickstream 数据,落到 warehouse,然后低延迟地对外提供聚合 dashboard。他们在意:容错、exactly-once 语义、分区策略、回填策略。我从 Pub/Sub 到 Dataflow 到 BigQuery 讲起,他们追问 late-arriving data 的处理也问得很好。
Behavioral: 标准的 Google Googleyness rubric。Leadership、ambiguity、跨职能冲突。准备 5-6 个 STAR 故事,并且每个都要能深挖。
整体比我预期的 DE 面试要难。他们更像是 SWE loop 加了一层 data specialization,而不是纯 analytics/warehousing。我的这次 loop 里确实出现了 LeetCode hard。
Offer 最后是 NYC 的 L5,TC 在 $320-340k。Recruiter screen 到 offer call 大概 3.5 周。Debrief 那段时间真的很煎熬,因为我知道自己有一轮 coding 很飘。
有问题欢迎追问。