// interview reports · 2025H2 – 2026Q1
AI 岗大厂面经精选
七家公司、七个岗位、二十多轮面试的一手记录。这里不讲"Transformer 是什么",只讲"他当时盯着你看、让你在白板上把 KV cache 显存占用算出来时,房间里发生了什么"。
TL;DR:2026 年 AI 面经趋势
从 2025 年下半年开始,AI 岗面试题的结构明显变了。我们把最近半年二十多份一手面经对齐后,归纳出 5 条观察:
观察 1 · 八股占比下降到三成。2024 年一面可以靠"背完 100 题"过,2026 年不行。一面里"手撕 + 项目深挖 + 系统设计"加起来已经到 60–70%,纯概念问答("什么是 RoPE / LayerNorm / MoE")通常只占 15 分钟,还会被追问到实现细节。
观察 2 · FlashAttention 成为必考。七家公司里五家问到了 FA2 / FA3 的分块策略、online softmax、为什么能省显存、为什么快。不是让你背论文,是让你在白板上画出 tile 怎么切、register 怎么用、HBM 读写多少次。
观察 3 · Agent / MCP 系统设计首次登场。Moonshot、字节、小红书都出现了"设计一个能调 20 个工具的 Agent,怎么做 planner / tool selector / memory / 失败回滚"的题。MCP 协议细节有人问,但更多是考"系统边界谁来定"。
观察 4 · RLHF 八股降温,DPO / GRPO / RLVR 接棒。PPO 在 2026 年已经不是热点,问 PPO 大多是热身。真正会追问的是:"DPO 为什么不用 reward model、它的 loss 推一遍"、"GRPO 相对 PPO 省了什么、为什么 DeepSeek 选它"、"RLVR 在数学/代码上为什么稳、为什么不能扩到开放域"。
观察 5 · 项目深挖越来越"毒"。面试官不再满足于"我做了什么",而是问"如果把 batch size 砍一半你怎么调 lr"、"训练中途 loss spike 了你怎么 debug"、"你这个 trick 为什么没在别人数据上 work"。没亲手做过的项目,5 分钟内就会被问穿。
高频题 Top 20
下表是我们从 24 份面经里提取的出现频次最高的 20 题,按"所有公司覆盖次数 / 出现轮次"排序。频率标注里:高 = 至少 4 家公司问过;中 = 2–3 家;低 = 1 家但多人提到。
| # | 题目 | 类型 | 出现公司 | 频率 |
| 1 | 手写 Multi-Head Attention 的 forward,标注每一步 shape 和 FLOPs | 手撕 | 字节、通义、DeepSeek、Moonshot、OpenAI | 高 |
| 2 | FlashAttention 为什么省显存?画出 tile 切分和 online softmax | 八股+手撕 | 字节、DeepSeek、Moonshot、小红书、Anthropic | 高 |
| 3 | 推导 DPO loss,解释 β 的物理含义,和 PPO 对比优劣 | 八股 | 通义、Moonshot、字节、OpenAI | 高 |
| 4 | 估算一个 70B 模型推理时 KV cache 的显存占用(给定 seq len / batch / dtype) | 手撕 | 字节、DeepSeek、通义、小红书 | 高 |
| 5 | MoE 的路由策略:top-k vs expert choice,load balance loss 为什么需要 | 八股 | DeepSeek、通义、字节 | 中 |
| 6 | RoPE 的推导、为什么能外推、YaRN / NTK 怎么改的 | 八股 | 通义、Moonshot、DeepSeek、Anthropic | 高 |
| 7 | 设计一个多轮 Agent 系统,能调 20+ 工具,怎么做 planner | 系统设计 | Moonshot、字节、小红书、OpenAI | 高 |
| 8 | LoRA 推导,rank 怎么选,为什么只训 Q/V 而不是 MLP | 八股 | 通义、字节、小红书 | 中 |
| 9 | Speculative decoding 原理,draft model 选多大,accept rate 怎么影响吞吐 | 八股 | 字节、Moonshot、DeepSeek | 中 |
| 10 | 给一段代码题:Top-K / 二叉树路径和 / LRU / 实现简化版 softmax | 手撕 | 全部 7 家 | 高 |
| 11 | 训练 loss spike 怎么定位?给你一张 tensorboard 截图 | 项目/debug | DeepSeek、通义、Anthropic | 中 |
| 12 | 你这个 SFT 数据是怎么清洗的,脏数据占比,你怎么衡量 | 项目 | 通义、Moonshot、字节 | 中 |
| 13 | 3D 并行:DP / TP / PP 各自什么时候用,通信量怎么算 | 八股 | DeepSeek、通义、字节 | 中 |
| 14 | Continual pretrain 会不会 catastrophic forgetting,你怎么缓解 | 八股 | Moonshot、通义 | 低 |
| 15 | GRPO 和 PPO 的区别,为什么能去掉 critic | 八股 | DeepSeek、Moonshot、字节 | 中 |
| 16 | Agent 的长上下文怎么管理?context engineering 具体做法 | 系统设计 | Moonshot、Anthropic、OpenAI | 中 |
| 17 | 多模态对齐:CLIP vs SigLIP,negative 怎么采,batch size 影响 | 八股 | 小红书、字节 | 低 |
| 18 | 写一个 CUDA kernel(或伪代码)实现 fused RMSNorm | 手撕 | DeepSeek、字节 | 低 |
| 19 | 介绍一篇你最近读的 paper,讲清楚 motivation / 方法 / 局限 | 项目 | Anthropic、OpenAI、通义 | 中 |
| 20 | offline evaluation 和 online AB 不一致时怎么归因 | 系统设计 | 小红书、字节 | 低 |
一个隐含规律:越靠前的公司(字节、通义、DeepSeek),前五题基本要求"现场能写、能算、能画",不能只说思路;越偏应用端的公司(Moonshot Agent、小红书搜推),后半段系统设计题占比更高。
字节跳动 · 豆包大模型算法工程师(北京,2026 春招)
字节 · 豆包大模型算法 · 2026.02
Lv 2-2
难度高
offer
背景:985 硕,2 年经验,前司做 RAG+知识库系统,发过一篇长尾 benchmark 相关的 workshop。
投递渠道:内推(前同事在豆包 RL 组)。时间线:1/20 投递 → 1/23 HR 联系 → 1/26 一面 → 2/3 二面 → 2/11 三面 → 2/14 HR 面 → 2/20 口头 offer,共 31 天。
一面 · 60 min · 豆包 post-training 组 Lv 2-1
- 自我介绍 + 项目深挖(25 min):面试官让我挑一个最熟的项目讲,我讲 RAG。他盯住"为什么你的 chunk size 是 512 不是 256"问了 10 分钟,追到"你做过消融吗、512 在你那份法律文档上的 recall@5 是多少、换成 semantic chunking 会怎样"。这里没准备具体数字就会露馅。
- 八股(15 min):
- "RoPE 和 ALiBi 的区别,为什么现在大家都用 RoPE 的变体"
- "DPO 的 loss 写一下,β → 0 和 β → ∞ 两种极端情况下模型行为是什么"
- "FlashAttention 为什么比 naive attention 快,但理论 FLOPs 是一样的"(他在白板上让我画 tile 切分)
- "给你一个 70B 模型,bf16,batch=8,seq len=32k,KV cache 多大,能放进 8×H100 吗"
- 手撕(15 min):实现
MultiHeadAttention.forward(q, k, v, mask),要求写清楚每一步 shape 变化,不能用 F.scaled_dot_product_attention。然后问"如果 head_dim=128,用 TP=8 切 head,通信在哪里发生"。
- 反问感受:面试官全程没笑,问完直接下一题,节奏很紧。最后 5 分钟给我反问,他态度缓和很多,说豆包 post-training 现在最大痛点是"数据质量的量化"。
二面 · 75 min · 豆包 RL 组 Lv 2-2
- 上来直接手撕(20 min):不给自我介绍时间,先写一道:"给定一个句子 token 列表和一个 reward 模型打分函数,用 REINFORCE 写出一个 step 的梯度更新伪代码"。然后追问"为什么需要 baseline、baseline 怎么选、PPO 为什么要 clip"。
- 项目深挖(30 min):这次不让我挑,他指定问我简历里那段"RM 训练"。问题包括:"你的 preference 数据有多少条、annotator 一致率多少、你怎么发现 RM 在 hack"、"你的 RM 分数在 SFT 模型上的分布长什么样、为什么 KL 惩罚是 0.02"。我答不出一致率,他记了一下。
- 八股(15 min):"GRPO 相对 PPO 的改动是什么,DeepSeek 为什么选它"、"RLHF 里 reward hacking 最典型的三种,你怎么检测"。
- 手撕 2(10 min):leetcode hard 简化版,"最长有效括号"变种,给你带权符号求最大和子串。
三面 · 50 min · 豆包 Tech Lead Lv 3-1
- 系统设计(35 min):"设计一个给豆包用的在线 RLHF 系统,每天处理 100 万条用户反馈,要做 reward model 持续更新 + 策略模型周级别迭代。画架构图。"。他追问:"你的反馈延迟是多少、dirty label 你怎么过滤、你怎么防止用户反馈带来的分布漂移把模型带歪"。
- 务虚(15 min):"你为什么想做大模型、你觉得 3 年后大模型方向最值得做的问题是什么、你对豆包目前哪里最不满意"。我答的是"长对话里的人格一致性",他点头。
HR 面 · 30 min
- 例行:base / 涨幅预期 / 其他 offer / 为什么字节。对 offer 的报价我直接甩了一个友商的数,HR 没还价,只说"结果出来我们谈"。
总结 / 踩坑
- 踩坑:一面被"你的 chunk size=512 的依据"打爆,说明简历上每一个数都要能解释到"我做了什么实验得到的"。
- 建议:豆包 post-training 的面试官会反复要求你"在白板上画图",别只靠嘴说。KV cache 显存、3D 并行通信量必须能现场算。
- 节奏:从投递到 offer 一个月,快。但三轮技术面总时长 3+ 小时,强度不低。
阿里通义 · LLM post-training 工程师(杭州)
阿里通义 · post-training · 2025.12
P7
难度高
offer
背景:海外 PhD 第 5 年,做过 instruction tuning 和 safety alignment,一作 ACL 长文两篇。
投递渠道:通义实验室负责人主动发邮件(因为我的 paper)。时间线:11/15 初聊 → 12/2 一面 → 12/9 二面 → 12/16 三面(交叉面)→ 12/23 部门老大聊 → 1/6 HR 面 → 1/10 offer,共 56 天。
一面 · 70 min · 通义 post-training 组 P7
- Paper 讲解(30 min):让我选一篇自己的一作讲。讲完他问"这个方法在 Qwen 上试过吗、你觉得会 work 还是不 work、为什么"。这是阿里特色:他们想知道你的方法能不能复用到他们自家模型上。
- 八股(25 min):
- "SFT 和 DPO,什么情况下 DPO 会比 SFT 差"(他想要的答案:preference data 噪声大、β 没调好、SFT 分布外的 rejected 样本)
- "RoPE 的频率 base 从 10000 改到 1M 是在干什么、为什么能外推"
- "Qwen 里有没有什么让你觉得'设计得不好'的地方"(送命题)
- "LoRA 的 rank 怎么定、为什么 Q/V 比 MLP 敏感"
- 手撕(15 min):Python 写一个"加了 KL 惩罚的 loss"(给定 policy logits、ref logits、reward),要求考虑数值稳定性(log-sum-exp)。
二面 · 80 min · 通义实验室 P8
- 项目深挖(40 min):他挑了我简历里最不起眼的一段——"safety red-teaming 数据 pipeline"——问了 40 分钟。"你的 seed prompt 从哪里来、你怎么去重、你怎么判断一个 red-team 样本是'好'的、你在 Qwen-72B 上能达到多少 ASR、你的 defense 方法在 out-of-distribution attack 上掉多少"。我有数据,答得比较顺。
- 系统设计(30 min):"设计一个能持续收集 Qwen 线上对话、做 preference labeling、训 reward model、更新 DPO 的闭环。画图,考虑成本、隐私、冷启动。"。他特别在意"你怎么决定什么时候该上新模型",我答"offline win-rate + online shadow traffic + 人工 sanity check"。
- 反问:我问"通义 post-training 现在最大的外部竞争压力来自谁",他坦诚说"DeepSeek 和 Kimi",然后聊了 15 分钟 GRPO 和 RLVR 在自家数学模型上的进展。
三面 · 60 min · 交叉面(P9,来自达摩院另一个组)
- 开放问题(40 min):"你觉得 RLHF 到 2026 年还有价值吗"、"如果给你 1000 张 H100 两个月,你会做什么课题"、"为什么你觉得 Qwen 比 GPT-5 差"。没有标准答案,他要看我有没有"独立判断"。我讲了 RLHF → RLVR → 自博弈 的演化路径,他听完点头说"有点意思"。
- 无手撕。交叉面基本不考代码。
部门老大聊 · 30 min
- 问"你如果来,想做什么、为什么不去字节 / Moonshot、对 base 预期"。他没问技术,但问了"你愿不愿意在杭州定居"。
HR 面 · 20 min
- 标准流程。通义 post-training 2026 年的 P7 base 已经到了一个很夸张的数字,股票部分比我预期多 40%,我基本没谈就接了。
总结 / 踩坑
- 送命题:问"你觉得 Qwen 哪里设计得不好"时,不要硬吹也不要硬喷。我答的是"multilingual 下的 tokenizer 压缩率在小语种上不均衡",给了具体例子(土耳其语 vs 英语的 tokens/word)。
- 建议:通义非常看重 paper 的深度和可复用性,没有 paper 的同学简历关就过不了,但如果你有 paper,他们会给你一个非常友善的面试节奏。
DeepSeek · 大模型训练工程师(杭州)
DeepSeek · 预训练组 · 2026.01
L4
难度高
挂在二面
背景:国内 top2 博士在读(四年级),做 MoE 路由相关方向,投稿 NeurIPS 在审。
投递渠道:官网。时间线:12/26 投递 → 1/10 笔试 → 1/17 一面 → 1/24 二面 → 1/28 二面挂,共 33 天。
笔试 · 90 min · 线上自测
- 3 道编程题:一道 hard leetcode(最短路变种)、一道 CUDA 伪代码(fused RMSNorm)、一道 PyTorch 写一个 expert-choice routing 的 forward。全程摄像头开着,不能查文档。这个笔试本身就会挂掉一半人。
一面 · 90 min · 预训练工程师 L4
- 项目深挖(30 min):问我 MoE 论文里"为什么 top-2 比 top-1 好"、"你的 load balance loss 的系数是怎么调的、调大了会怎样"、"你在多大规模上验证过"。他不在乎我论文讲的故事,他在乎"数"。
- MoE 深度(25 min):
- "expert choice 和 token choice 的 trade-off"(答:expert choice 天然负载均衡,但每个 token 被选中的 experts 数量不固定,推理时麻烦)
- "DeepSeek V3 的 fine-grained + shared expert 为什么能 work"
- "如果一个 expert 彻底 dead(收不到 token),你怎么救活"
- 手撕(20 min):写一个
top_k_gating(x, W, k),要求 gradient 能回传到 W。然后追问"如果 k=2 但某个 token 的第 2 名和第 3 名 logit 差距小于 1e-5,会不会有数值问题"。
- 系统 ops(15 min):算题。"16 层 MoE,每层 256 experts,每个 expert 是 7B 的 MLP,用 EP=64 TP=8 PP=4,一个 token 一次 forward 的跨节点 all-to-all 通信量是多少"。我在白板上列式子,答得磕磕绊绊。
二面 · 80 min · 训练基础设施 L5(挂在这里)
- 上来就手撕 30 min:写一个 pipeline parallelism 的 1F1B 调度伪代码,画出 bubble。然后给一个具体配置(PP=8, micro_batch=32),算 bubble ratio。我写得慢,他明显不耐烦。
- Debug 题(20 min):给我看一张 loss 曲线——训练到 5000 step 突然 spike,2 个 step 后恢复。问"你会怎么定位"。我答"先看 grad norm、看 optimizer state、看具体哪个 rank 先爆、回溯那个 batch 的数据"。他追问"如果 grad norm 正常但 loss 就是 spike 呢",我卡住了。正确答案是"可能是 activation 溢出触发了 NaN 又被 skip 掉",我面完查了才知道。
- 系统设计(25 min):"设计一个能训 1T 参数模型的 checkpoint 系统,考虑容错、恢复速度、存储成本"。我讲了 async checkpoint + sharded save,但在"怎么保证 step 一致性"上答得不清楚。
- 反问:我问"你们现在 HBM 最紧张的是哪一步",他答得很快:"all-to-all 通信的 overlap"。我又问"那你们为什么不用 expert parallelism 的替代方案",他停了一下说"这个问题我们现在也在想"。
挂的原因 / 总结
- 面试官反馈:"对分布式训练的 low-level 理解不够,系统层的 debug 经验缺失。" 说实话很公平。
- 建议:DeepSeek 的面试是"工程能力 > 论文"。你论文再好,不会手算 bubble、不会 debug loss spike,就会挂。如果目标 DeepSeek,建议找一个真实分布式训练项目亲手做(哪怕只在 8 卡上做),比背完 100 道八股题有用。
- 氛围:面试官非常直接,不寒暄,问完就等你答,答不出就下一题。不是冷漠,是效率导向。
月之暗面 · Kimi Agent 工程师(北京)
Moonshot · Kimi Agent · 2026.03
Mid
offer
背景:普通 985 硕,3 年经验,上家做搜索+LLM 融合,做过 Agent 产品化。
投递渠道:猎头。时间线:2/20 投递 → 2/25 一面 → 3/4 二面 → 3/11 三面 → 3/18 HR → 3/25 offer,共 33 天。
一面 · 60 min · Kimi Agent 组工程师
- 自我介绍 + 项目(20 min):面试官对我做过的"企业内部知识库 Agent"非常感兴趣,让我画整体架构。问我"你们的 tool schema 是怎么定义的、有没有用 MCP、你们的 planner 是 ReAct 还是 plan-and-execute"。
- Agent 八股(15 min):
- "ReAct 的最大问题是什么"(答:上下文爆炸、错误累积、反思机制弱)
- "如果一个 tool call 返回 10k tokens 的垃圾结果,你怎么处理"
- "Agent 的 long-term memory 你见过哪些实现,分别什么场景合适"
- "function calling 和 MCP 有什么区别、什么时候值得切到 MCP"
- 手撕(15 min):一道偏真实场景的题——"给你一个 Agent 的 trace(50 步,其中第 27 步调用失败),写一段 Python 代码自动定位最早的异常点,并判断是 tool bug 还是 planner bug"。开放性题,思路比代码重要。
- 反问:我问 Kimi 的 Agent 现在 bottleneck 在哪,他答"tool robustness 和 cost",很坦诚。
二面 · 90 min · Kimi Agent 组 Tech Lead
- 系统设计(50 min):"设计一个能自动帮用户完成'从 500 封邮件里找出本周所有和项目 A 相关的未回复邮件,并起草回复'的 Agent。从零开始画。" 这是 Moonshot 的招牌题型:真实、长链路、要考虑失败路径。我画了 45 分钟,他追问:
- "如果用户中途改主意怎么办"
- "如果邮件里有附件 100MB PDF,你的 context 怎么放"
- "如果某个 tool 有 2% 的概率返回错误结果,你怎么检测"
- "线上每天有 10 万用户用这个功能,你的 LLM 调用成本怎么控制"
- 项目深挖(25 min):问我上家"企业 Agent 上线后踩了哪些坑",我讲了三个:tool schema 漂移、长 session 的 memory 压缩、用户越权。每一个他都追问具体数字和修复方案。
- 手撕(15 min):简单的一题,实现一个 token-aware 的 sliding window 对话截断。
三面 · 50 min · 业务负责人
- 主要聊方向:Kimi Agent 2026 的 roadmap、我对"Agent 的产品化"有什么看法、如果给我一个 5 人小组我想先做什么。无技术考题。
- 他问了一个有意思的问题:"你觉得做 Agent 最难的是模型能力、工具质量、还是产品定义。" 我答"工具质量 + 产品定义的耦合——好的产品定义会让模型能力的不足被隐藏",他说"这是我们内部的共识"。
HR 面 + 总结
- HR 面例行。Moonshot 的薪资不如字节和阿里,但股票的 upside 预期更高,看个人赌性。
- 踩坑:二面的长系统设计题,很多人死在"你画的图太干净,没考虑失败路径"。面试官会专门找你图里最薄弱的一环追问。
- 建议:Moonshot 面试最重视"你有没有亲手跑过 Agent 上线"。纯做 prompt engineering 没上线经验的会很吃亏。
小红书 · 搜推多模态算法(上海)
小红书 · 搜推多模态 · 2026.01
高级
offer
背景:2+3 年经验,前司快手做过视频理解+召回,熟悉大规模工业推荐系统。
投递渠道:官网 + 内推组合。时间线:12/15 投递 → 12/22 一面 → 12/29 二面 → 1/5 三面 → 1/12 HR → 1/20 offer,共 36 天。
一面 · 70 min · 搜推多模态组
- 业务热身(10 min):"你为什么想来小红书"、"你觉得小红书和快手、抖音在搜推上最大的差异是什么"。小红书非常看重"你懂不懂我们的业务"。
- 项目深挖(30 min):我讲了快手的多模态召回项目。他问:"你的视频 embedding 维度多少、你的 ANN 索引用什么、线上 QPS 多少、P99 延迟多少、你的召回 recall@100 怎么评估、离线和在线 gap 有多大"。这套组合拳对工业岗很常规,但"离线和在线 gap 怎么归因"没两年实战答不出。
- 多模态八股(20 min):
- "CLIP 和 SigLIP 的区别,SigLIP 为什么能用更小 batch"
- "你在冷启动 item 上怎么做多模态召回"
- "如果图文不一致(图和 caption 讲的不是一回事),你的 embedding 会怎样、怎么缓解"
- 手撕(10 min):给一个二维矩阵的"小红书笔记-用户"点击矩阵,求共现矩阵的 top-k 相似 item,要写 memory-efficient 的版本。
二面 · 75 min · 搜推团队 Tech Lead
- 系统设计(40 min):"设计小红书的'视频笔记搜索'的多模态召回 + 排序链路。要求支持每天新增 1000 万笔记,QPS 峰值 5 万。" 他关注的点:在线 embedding 怎么实时生成、索引怎么更新、长尾 query 怎么召回、如何 AB。我画了 30 分钟。
- 项目逼问(20 min):"你在快手那个项目,上线之后业务指标涨了多少,涨的来源是什么,有没有 segment 上不涨甚至掉的。" 这题送命。他想听你承认"某些 segment 掉了"并说清为什么。
- 八股(15 min):"LLM 怎么融入搜推链路、你见过的三种方式分别有什么问题"(我答 query understanding、生成式召回、rerank;每种他都追问成本和收益)。
三面 · 50 min · 技术负责人
- 主要是方向判断:"2026 年搜推还值不值得做、生成式召回会不会吃掉传统召回、多模态在小红书场景下你觉得哪里会先落地"。
- 他不考八股,但会用"你这个想法在我们的数据规模下为什么不 work"来压你。要有准备答"我的想法的边界在哪里"。
总结 / 踩坑
- 踩坑 1:上来答不上"小红书业务特点"就很减分。面前一天至少花 1 小时看小红书的产品形态、技术博客、财报披露。
- 踩坑 2:一面问"离线-在线 gap 如何归因",答不出的直接 pass。这道题答案一定要准备:数据时效性差异、feature skew、selection bias、exploration 不足、metric 定义不一致。
- 建议:小红书搜推岗的"业务理解"占比 20%+,这是和纯研究岗最大的差异。
OpenAI · Member of Technical Staff, Applied(SF,海外对照)
OpenAI · MTS Applied · 2025.11
IC4
难度高
挂在 onsite
背景:美国 top-10 学校 PhD,论文方向 tool use + agents,之前在 FAANG 实习过两次。
投递渠道:referral(朋友在 Applied 组)。时间线:9/20 referral → 9/28 recruiter screen → 10/10 技术 phone screen → 10/24 takehome → 11/12 onsite(4 rounds)→ 11/20 反馈挂,共 61 天。
Recruiter screen · 30 min
- 标准。问动机、visa、timeline、其他 offer。不考技术。
Phone screen · 60 min · 一位 Applied 组 engineer
- Coding(45 min):两道题。第一道是 leetcode medium 变种——给定 streaming tokens,实现一个能动态维护 top-k frequency 的数据结构。第二道是"实现一个简化的 beam search,给定 logits 函数和 beam size"。
- Behavioral(15 min):很 OpenAI:问我"最近一次你在一个项目上改变主意的经历"、"一个你做的决定结果证明是错的"。
Takehome · 7 天窗口 · ~8 小时工作量
- 给一个 notebook 模板,让你基于开源 LLM 实现一个 tool-use agent,在他们提供的 benchmark 上评测,写一份 4 页技术报告。评分点:代码质量、实验设计、失败分析、写作。
- 我做了一整个周末,跑了三组消融,写报告时花了很多时间在 failure mode 分析上。反馈说"analysis good, code structure could be cleaner"。
Onsite · 4 轮 · 每轮 60 min · 全 virtual
- Coding round:在他们内部 playground 里写代码,实时运行。一道偏 ML 的系统题——实现一个 batched inference 的 request scheduler,要考虑不同 seq length 的 padding 开销。面试官打字很快,我跟不上节奏。
- ML depth round:白板式。问"speculative decoding 的 math 推一遍"、"如果 draft model acceptance rate 是 0.6,speedup 上界是多少"、"为什么 self-speculative 有时比用小 draft model 还好"。这轮我答得最好。
- System design round:设计 ChatGPT 的"记忆"功能——用户可以让 ChatGPT "记住我是纯素食者",跨会话生效。要求画架构、讲隐私、讲 evaluation。我在"怎么评估记忆质量"上卡住了,没想到一个好的 metric。
- Behavioral / values round:问了一堆偏价值观的问题——"一个你不同意公司方向的经历"、"如果你看到同事做了不安全的模型发布你会怎么做"、"你对 AGI timeline 的看法"。OpenAI 的文化面试非常认真,不是走过场。
挂的原因 / 总结
- Recruiter 的反馈:"strong ML depth, but system design and coding pace need improvement"。翻译过来就是 coding round 和 system design round 分数低。
- 建议:OpenAI Applied 的面试对 coding 速度 要求很高——不是难度高,是节奏快。很多题目看起来是 medium,但 60 分钟要做完两道并讨论 trade-off。练 leetcode 的速度,比练难度有用。
- 关于 behavioral:不要把它当走过场。OpenAI 确实会因为 values 答得差挂人。
Anthropic · Research Engineer(SF,海外对照)
Anthropic · Research Engineer · 2026.02
L4
难度高
offer
背景:美国 PhD 毕业 2 年,前司 Google Research 做 alignment,一作 ICLR 一篇。
投递渠道:Anthropic 官网(没 refer,但 recruiter 看到 paper 主动联系)。时间线:12/10 recruiter 首聊 → 12/20 takehome → 1/10 virtual onsite(5 轮)→ 1/25 team match → 2/5 offer,共 57 天。
Takehome · 10 天窗口 · ~12 小时工作量
- 非常 Anthropic 式:给一个已有的小 transformer 代码库,让你实现一个"受控生成"的机制(类似 constitutional AI 的极简版),在 toy dataset 上跑,写报告。
- 评分点不只是结果,还包括"你在 design doc 里做了哪些 trade-off 说明"、"你的 failure mode 写得够不够诚实"。我报告里专门有一节 "What I'd do differently with more time",后来面试官说这节是加分项。
Onsite · 5 轮(一天内 3 轮 + 另一天 2 轮)· 全 virtual
- Coding round · 60 min:Pair programming 风格。面试官不只看你能不能写出来,而是和你讨论设计。题目是"implement a KV-cache for a decoder-only transformer, then extend it to support paged attention"。他一边写一边和我讨论 memory layout,氛围非常协作。
- ML research depth · 60 min:深挖我那篇 ICLR。问到了"如果把你的方法用在 Claude 的训练里,会遇到什么 scale 相关的问题"、"你的 baseline 有没有可能其实没 converge"、"你的 human eval 里 annotator agreement 是多少、你信这个数吗"。非常严谨。
- System design · 60 min:题目是"设计一个 red-teaming 系统:每天产生 10 万个可能触发 Claude 不安全行为的 prompt,自动判断哪些成功了、把成功的样本 feed 回 RLAIF pipeline"。这题和他们的业务强相关。评分点:你有没有想到 attack diversity、distribution shift、false positive rate。
- Research taste · 60 min:一个非常 Anthropic 的环节。面试官和我一起读一篇 paper(他当场发给我)——一篇关于 sleeper agents 的论文——给我 20 分钟读,然后问"这个实验最值得复现的是哪部分、你觉得他们的结论有多可信、如果你来做你会改什么"。这是我人生中最像博士生答辩的一次面试。
- Behavioral / alignment-values · 60 min:比 OpenAI 还严肃。问题包括:"你对 AI safety 的 threat model 是什么"、"你在过去工作里有没有主动降低过模型能力"、"如果 Anthropic 让你做的项目你觉得不安全,你会怎么办"、"你对 RSP(Responsible Scaling Policy)有什么看法"。他们会 follow up 你的每一个答案,没提前思考过的会答得很虚。
Team match · 45 min × 2 个组
- 过了 onsite 之后,你会和 2–3 个可能的 host team 各聊一次,双向选择。我聊了 alignment team 和 interpretability team。
总结 / 亮点
- 节奏:Anthropic 的 virtual onsite 不要求你一天干完 5 轮(这点比 OpenAI 友好),但 takehome + research taste round 总耗时可能 20+ 小时。
- 最大不同:Anthropic 非常非常看重"research taste"和"safety seriousness"。你在 behavioral round 不能只说"我支持 AI safety",要能展开讲你对 threat model、evaluation、policy 的具体判断。
- 建议:如果你不熟 alignment literature,提前精读 3–5 篇 Anthropic 自己的 paper(constitutional AI、sleeper agents、RSP、interpretability 系列)。面试官会引用它们。
面试流程通用建议
1. AI 项目怎么讲:STAR 不够
传统 STAR(Situation / Task / Action / Result)在 AI 岗已经不够用。面试官想听的是 指标 + trade-off + failure mode 三件套:
- 指标:别说"效果提升",要说"recall@100 从 0.62 到 0.71,业务 CTR 涨 3.2%"。没数的项目,面试前自己算一个。
- Trade-off:每一个选择都要能说"我为什么没选另一个方案"。比如"我用了 DPO 而不是 PPO,因为我们的 preference data 只有 8k 条,PPO 的 critic 训不起来"。
- Failure mode:主动讲"这个方法在哪些 case 上不 work、为什么"。面试官非常讨厌"我的方法 perfect"的叙述,主动暴露缺陷反而加分。
一个公式:"我在 [具体场景] 下做了 [具体方法],相比 [baseline] 在 [指标] 上提升了 [数字],代价是 [成本/延迟/数据依赖],在 [某类 case] 上它还不如 baseline,原因是 [机制性解释]。"
2. 如何反问
3 个值得问的问题:
- "你们团队现在最大的技术瓶颈是什么?"—— 面试官会很自然地讲出真实情况,能让你判断团队实际状态,也让他感受到你在认真考虑加入。
- "团队接下来 6 个月的 roadmap 里,你自己最期待的是哪一个?"—— 能套出方向信息。
- "如果我加入,我前 3 个月会做什么项目?"—— 务实信号,而且如果对方支支吾吾说明 onboarding 没想好。
3 个不要问的问题:
- "你们加班多吗?"—— 这个问 HR,不要在技术面试里问。
- "base 多少 / 股票多少?"—— 留给 HR。
- "你们公司和 XXX 有什么区别?"—— 太空,会让面试官觉得你没做功课。
3. 薪资谈判 · 2026 年行情参考
下表是我们从 40+ 份 offer 里汇总出的大致区间(不含 sign-on,单位万人民币/年,海外单位万美元/年)。数字波动很大,仅供参考:
| 公司 | 岗位 | 级别 | 现金 total | 股票(年化) |
| 字节 豆包 | 大模型算法 | 2-2 | 80–110 | 40–80 |
| 阿里 通义 | post-training | P7 | 70–95 | 35–70 |
| DeepSeek | 预训练 | L4 | 85–120 | 40–100(不透明) |
| Moonshot | Agent 工程师 | Mid | 60–90 | 较高 upside |
| 小红书 | 搜推算法 | 高级 | 60–85 | 30–55 |
| OpenAI | MTS Applied | IC4 | $260k–$340k | $500k–$900k |
| Anthropic | Research Engineer | L4 | $290k–$360k | $600k–$1.1M |
撬动 offer 的技巧:
- 并行面试:拿到 2 个竞争 offer 后再谈。单独一家公司谈价空间很小,有对照立即多 20–40%。
- 写邮件而不是口头谈:给 HR 的加薪请求一定要邮件,形成书面凭证、方便 HR 向上申请。
- 具体数字 + 依据:别说"我希望再高一点",要说"base 提到 X,理由是我有另一家给的 Y,我更想来你们但需要你们 match"。
- 股票 vs base:国内 base 涨幅窗口通常 10–15%,股票窗口更大,可以试着往股票和 sign-on 要。
红线 / 踩坑
红线 1 · 简历造假 / 夸大项目。只要说了"我主导了",面试官会追问 3 层。一旦出现"我们团队做的,具体这块不是我"的答案,基本挂。建议简历上"主导"、"第一负责人"只用在真的是的项目上。
红线 2 · 面试中被问细节答"忘了"。尤其是简历上写的数字——训练数据量、模型参数、线上指标——如果你答"具体数字忘了",面试官会假设你没真做过。宁可说"印象里是 X 量级,具体我回去查",也别直接说忘了。
红线 3 · 八股答得"教科书"。"RoPE 就是旋转位置编码,用旋转矩阵……" 这种答案 2024 年还行,2026 年会被面试官接一句"你在哪里用过它、换成 ALiBi 会怎样、为什么"。背书式答题在中高级岗位等同挂掉。
红线 4 · 反问环节零问题。你说"没什么想问的",面试官会在评分表里写"engagement low"。至少准备 3 个问题。
红线 5 · 讨论竞品 / 前司的 bad talk。"我前司很垃圾,所以我来这里"——无论前司真的多垃圾,面试官都会担心你离职时也会这么说他们。吐槽要有技术性("前司在 X 上的决策我不认同,因为 Y"),不要人身攻击。
最后一句心法:AI 岗面试强度越来越高是事实,但"面试官也是人"也是事实。真的亲手跑过模型的人,和背了一个月八股的人,五分钟之内就能分辨出来。与其刷题刷到凌晨,不如找一个你真感兴趣的开源项目,从 pretrain 到 SFT 到 eval 完整跑一遍——这是 2026 年最有效的面试准备。