在 SpaceX 的 MLE 面试结束了。发出来是因为不同公司的 ML 面试差异很大,而 SpaceX 属于比较特别的那种。
先说重点:SpaceX 做的是 applied ML,不是 research ML。如果你是 NLP 或 LLM 方向出身,预计会被问的是你怎么把模型放进生产工程场景里应用,而不是 fine-tuning 或架构新花样。这个组织在意的是你的模型在真实系统里能不能稳定工作,而不是在 benchmark 上是不是 SOTA。
面试轮次:
Coding screen:标准 medium 难度算法题。没有 ML 相关。他们就是要确认你能写代码。Python,比较直接。
ML system design:这才是重头戏。我被要求设计一个针对时间序列传感器数据的 anomaly detection 系统。开放题。他们希望我讲清楚:数据 pipeline 设计、feature engineering 思路、选模型的理由、怎么评估、以及如何处理随时间变化的 concept drift。“如何处理 concept drift” 这块被盯得很紧。他们会深挖监控和再训练策略。
ML depth interview:更偏技术深度。问了 tabular 数据上 gradient boosting 和 deep learning 的取舍(要有真实观点,别打太极)、各类 regularization 技术以及它们分别在什么时候关键、以及一个模型 offline eval 表现很好但线上很差你会怎么排查。
Behavioral:常规。准备一些在约束下交付、处理脏数据、向利益相关方传达不确定性的故事。
他们没问的: LLM、transformers、任何 NLP。没有 graph neural networks。没有 RL(有点意外)。整体是很偏 applied、任务关键的系统场景。
准备建议:时间序列建模、anomaly detection 方法(统计和 ML)、以及生产级 ML 系统要很熟。要分得清“能跑的模型”和“在安全关键环境里你敢信的模型”。在 SpaceX 这个 framing 很重要。