Amazon AS 的面试分成 Screening 和正式的 Onsite / Virtual Loop。Loop 一般 4-5 轮,主要覆盖 ML Breadth、ML Depth、Coding / DSA、ML Design / Application 和 Bar Raiser。不同 Team 的安排会有差异,ML Depth 可能由 Hiring Manager 主持,Coding 由 SDE interviewer 负责,Bar Raiser 通常来自其他 Team。对于 Intern 或 New Grad,前面还可能有 OA。
Screening 阶段如果 Resume 上有论文或 ML Project,往往会直接 Deep Dive。从 Dataset 开始追问 Ground Truth 如何确定、如何处理异常标注、如何衡量 annotator quality,甚至讨论 Regression vs Pairwise Ranking 等。如果项目涉及 Retrieval,还可能延伸到 Cold Start、offline embedding、Bi-Encoder vs Cross-Encoder、ANN、Knowledge Distillation。
Coding 整体以常规 DSA 为主,包括 Array、HashMap、Merge Intervals、Tree、Graph、DP 等,也可能出现 String DP 或简单的 Low-Level Design。题目本身未必难,但比较看重 reasoning process。比较好的方式是先解释 Brute Force,做一次 dry run,分析 Time/Space Complexity,再指出 bottleneck 并逐步优化。
ML Breadth 考察基础是否完整。传统 ML 需要覆盖 Supervised vs Unsupervised Learning、Evaluation Metrics、PCA、K-Means、GMM、Boosting/Bagging、Optimizer、Class Imbalance 等;Deep Learning 涉及 Transformer、Self-Attention、BERT、LSTM 以及 Attention 的时间复杂度。这一轮深浅不固定,有时只问 intuition,有时也可能要求解释 Logistic Regression / SVM 的 MLE、MAP、Kernel Trick。
ML Depth 往往是整个 Loop 最核心的一轮。面试官从 Resume 中挑一个重要 Project,从 Business Problem 一直追问到 Modeling 和 Production。讨论路径包括:为什么这个问题值得解决、如何定义成 ML Problem、Dataset 和 Label 怎么构建、Baseline 是什么、为什么选择当前 Model、具体使用什么 Loss Function、Offline Metric 和 Online Metric 如何对应、Training Pipeline、Online/Offline Inference、Latency、Deployment、Scaling 和 Model Drift。这一轮最重要的是能解释每一个技术决策背后的 Why。
ML Design / Application 更接近 ML System Design。例如 Design Amazon Search Relevance System,从 Business Objective 开始,设计到 Training、Evaluation 和 Serving。面试官可能逐渐增加新的 Business Objective(如同时优化 Relevance、CTR 和 Conversion),引导考虑 Multi-Task Learning、shared representation、task-specific head 或自定义 Loss。
Amazon AS 面试最明显的特点是连续 Deep Dive。你提到一个 Model,可能马上被问为什么选择它;提到一个 Metric,会被问为什么不用另一个;提到 Production System,又可能继续追问 Latency、Scaling 和 Failure Handling。确保自己说出来的每个关键技术点,都能够继续回答两三层 Why。