我先说实话:Target 的 recruiter 给我发消息时,我差点就直接跳过了。我一直把他们和零售联系在一起,而不是 ML。这想法太偷懒了,也错得离谱。我写这篇就是想让其他 ML 工程师别踩同样的坑。
Target 在做真正大规模的推荐系统。个性化搜索排序、当日达的路径规划模型、动态定价信号、面向 2000+ 门店的需求预测。我面试的团队是他们的 Personalization Platform 组。
我面 MLE(相当于 senior 级别)的流程:
Recruiter + HM 初筛(两通不同电话): HM 的初筛很硬核,是真的技术面。他问了我的 recsys 经验、我怎么处理 cold-start 问题、以及我有没有做过实时特征服务的基础设施。这不是那种披着聊天外衣的筛人环节,他是真的想了解。
Onsite(4 轮):
ML 深度面: 两小时,两位 senior MLE 一起面。一开始是让我说如果要给未登录用户做商品搜索排序(没有交互历史,只有 query + 商品目录特征),我会怎么做。我们深挖了特征工程的选择、对冷启动用户协同过滤和基于内容方法之间的取舍、以及上线前我会如何离线评估模型质量。其中一个人问我怎么判断模型线上指标和线下指标的相关性失效了。好问题,真的是实操层面的担忧。
Coding 面: Python。一个图遍历题(在门店布局图上做 BFS,说实话不像 recsys 的 ML 岗会问的,但也算合理)。另一个是 pandas/numpy 的数据处理题。更看重代码干净,而不是刁钻的优化。
系统设计(ML system): 设计一个支持实时个性化的 feature store。我讲了数据摄取、服务延迟要求、离线/在线一致性、特征版本管理和回滚。他们在服务延迟上追问得很狠,比如商品页推荐的 SLA 你怎么定,你怎么通过特征检索达到这个 SLA。
Behavioral: 标准的 senior 级别校准问题。比如你什么时候对项目方向提出过反对意见,你什么时候在数据不完整的情况下做过决定。他们要的是具体例子,不是大道理。
总结: 这是一支在做真 ML 问题的团队。他们不是招人来在简单模型上调超参的。如果你有扎实的 recsys 或 ranking 经验,也能聊清楚 MLOps(feature store、模型监控、A/B 测试基础设施),你们会聊得很有来回。Comp 比同级别 FAANG 低一些,但没有我想的那么多,而且问题确实挺有意思。