上个月刚走完 microsoft data engineer 的完整流程,Redmond 团队(Azure Data)。准备的时候找不到太多具体的经验贴,所以在这里写点有用的。
总共 5 轮:1 轮 recruiter screening,1 轮跟 hiring manager 的 phone screen,然后是 3 轮 virtual onsite(他们叫 virtual onsite,但显然全是视频)。
他们实际问了什么:
SQL 是认真的,而且不简单。不只是基础 joins。我遇到一个多步题:从 raw events 表开始,先写去重,再聚合,然后中途加了一个新条件要处理 late-arriving data。感觉他们想看你在需求变化时怎么思考。
pipeline design:他们描述了一个场景,每天 50TB logs 进来,延迟要求混合(有些 dashboard 需要 near-real-time,有些可以 batch)。让我讲架构。我讲了 Azure Data Factory vs Databricks jobs 做 batch,Event Hubs + Stream Analytics 做 streaming。他们不死守某个技术栈,更在意你能不能把 tradeoffs 讲清楚。
另外每一轮都有 behavioral,不是只有一轮单独的 behavioral。HM 问了经典的“讲一次你有 competing priorities 的时候”,还有一次和 stakeholder 冲突。都要 STAR 格式回答,准备好 follow-up 比如“你会怎么做得不一样”。
我希望提前知道的事:
他们内部很强调 “growth mindset” 框架(很 Microsoft,很 Satya Nadella 时代)。面试官会听这些:你有没有学到东西、有没有承认错误、有没有变得更好。以“我全程吊打、一切完美”结尾的故事,反而不如“我搞砸了,然后之后我改了什么”。
定级也会稍微聊一下。我投的是 SDE II 对标,在 Microsoft 的 data eng 里大概是 L62。以 7 YOE 来说挺合理。别以为你投什么就一定给你什么 level。
整个流程从头到尾大概 5 周。headcount 是真的,recruiter 也很沟通。