我在差不多相隔 8 个月的时间里,针对两个不同的岗位做了 HF 的 final round。两次之间流程有些变化。写出来做个对比,因为网上信息大多停在 2023,已经变了。
第一次 loop(ML engineering role,2025 年初): 一天四场,全部 Zoom。Coding、system design、ML depth、behavioral。ML depth 那轮让我讲模型评估的方法,还要解释一篇我最近读的 paper。system design 更偏 inference。
第二次 loop(更偏 applied ML / platform-adjacent,2026 年初): 分两天,总共三场。他们把 behavioral 挪到第 1 天的第一场,第 2 天再做 coding + system design。说是改成这样,让候选人先用聊天「热身」再进技术轮。说实话确实有帮助。
变了什么,没变什么: behavioral 在两次之间更结构化了。第一次很 freeform。第二次我能感觉到他们有明确的 rubric 在走,从追问就看得出来。这不是抱怨,只是观察。
两次的 ML depth 都非常偏实战。不是「explain backpropagation(解释反向传播)」,而是「what went wrong in a model training run you debugged(你调试过的一次模型训练里出了什么问题)」或者「how did you evaluate this tradeoff in production.(你在生产环境里是怎么评估这个权衡的)」
Debrief 时间: 第一次:6 个工作日出 offer。第二次:4 个工作日。两次都比我做过的任何 FAANG loop 更快。
真正重要的点: 要具体。第一次失败后我问了 HF 的面试反馈(我主动要的),他们说我答案都挺扎实,但太偏理论。他们想听的是我做过、踩过坑的真实系统,不是我会怎么做一个假设场景。我第二次非常认真地改了这一点。
onsite 氛围比大厂更低 ego。没人想坑我,也没人故意问很冷门的问题。难点之所以难,是因为题确实复杂,不是因为题目刻意绕。