2026 年初走完了 Notion 的 ML engineer 面试。分享出来是因为我准备时完全找不到什么有用信息,搜到的基本都是他们的 SWE 流程。
先说清 Notion 里 ML 到底指什么。他们在 AI 功能上推进很猛:Ask Notion / AI assistant 那些东西,smart summaries,block 自动分类。所以 ML 团队不是做纯研究的。他们要能 build and ship 的人,懂 LLM 集成模式的人,也要对什么时候该用 fine-tuned model、什么时候用 retrieval-augmented system、什么时候用 prompt-engineered 有自己的观点。
准备时要把这个前提记在脑子里。
流程:
Recruiter screen(30 分钟),然后是一轮团队工程师的 ML 专项 phone screen。这个 phone screen 更像技术讨论,不像 coding test。我们聊了我做过的一个推荐功能,我的训练 pipeline 长什么样,我怎么评估,以及回头看我会怎么改。他们不在意你能不能背 ML 基础概念,更想看你能不能把 ML 放在真实产品语境里思考。
Virtual onsite,4 轮:
ML system design(60 分钟): 设计一个 AI 驱动的文档摘要功能。这题跟他们实际产品路线图贴得太近了,近到有点像真的在做 spec review。我讲了长文档 chunking 策略、embedding model 的选择、延迟的 tradeoff、底层文档变化时怎么处理更新。他们对 latency 的追问非常狠:摘要多长时间算可接受?用户预期是什么?最后变成了既像产品讨论,也像 ML 讨论。
Coding(45 分钟): 标准 Leetcode medium,没有 ML 专属内容。对那种没怎么刷算法的 ML 候选人来说会有点烦,所以还是得准备。
ML fundamentals + applied(60 分钟): 这一轮很深。gradient descent、regularization、为什么 dropout 有用、attention 机制。然后转到:你会怎么评估这个摘要功能、哪些指标合理、怎么避免 eval gaming。评估这部分我见过很多人翻车。要知道自动指标和人工评估的区别,并且对什么时候该用哪种有观点。
Behavioral(45 分钟): 跟公司其他岗位一样。带 STAR 故事,尤其是关于不确定性和跨团队协作的。
总体:对一个这个体量的公司来说,这个 loop 比我预期更难。如果你来自纯研究背景,你会需要练习把你做过的东西翻译成产品语言。如果你来自大厂的 applied ML 团队,会更熟悉。
我看到的 comp,大概在 2026 年 SF 的 L4/L5 对标 $220-260k TC,取决于 level。股权池比 FAANG 小,但 vest 更快。