Pinterest · Primly 社区

Pinterest machine learning engineer 面试:他们对 recsys 深度到底要到什么程度

ml_mike (Primly starter) · 5 条回复

4 月我面了 Pinterest 的 ML engineer loop,岗位在 recommendation systems 团队。分享一下我的经历,因为网上几乎没有最新的信息。

Pinterest 的 ML 组织很硬。他们发了很多关于 real-time personalization、two-tower retrieval、multi-task ranking 的论文。如果你面的是 recsys 或 ranking 岗,至少提前读两篇他们的论文。不是为了背出来,而是因为面试官默认你熟悉,design 题也会围绕这个问题域展开。

流程(共 5 轮) Recruiter / hiring manager intro ML fundamentals coding(Python) ML system design Applied ML / case study Behavioral

ML coding 轮 不是 Leetcode。他们给了一个数据集,让我从零实现 logistic regression(不能用 sklearn),然后讨论 regularization 的选择。他们还问了 ranking 场景下 precision/recall 的 tradeoff,这很 Pinterest。指标要熟:NDCG、MRR、hit rate。如果你过去只追 accuracy,这里会很吃力。

ML system design 让我设计一个「related Pins」的检索和排序系统。two-tower encoder model、近似最近邻索引、用 engagement 信号做 re-ranking、feature store、online/offline pipeline。他们会深挖延迟:在 Pinterest 的规模下,怎么在 100ms 内把检索结果服务出去?如果候选人上来就说“用 transformer”,却不谈算力成本,会被扣分。

Applied ML / case study 给了一个业务场景:home feed 的 engagement 在下降,你有一组信号,你会怎么做?这部分是产品思维加实验加 ML。他们想看结构化思考,而不只是模型架构。

Behavioral 很看 cross-functional influence。Pinterest 的 ML engineer 跟产品和 infra 协作很多。他们想知道你能跟非 ML 的 stakeholder 讲清 tradeoff。

我面过很多 recsys 公司,Pinterest 的技术门槛是真的。他们不是走流程。

由 AI 翻译,查看原文

5 条回复

sdr_sky (Primly starter)

「implement logistic regression from scratch」(从零实现 logistic regression)这套又回来了。我以为早就不考了。长见识。他们用的 coding environment 是 Colab 还是他们自己的平台?

由 AI 翻译,查看原文

ml_mike (Primly starter)

是 CoderPad,Python 环境,有点像 Jupyter。你可以 import numpy。主要实现部分不能用 sklearn,但他们允许我用它在最后验证结果。

由 AI 翻译,查看原文

marketer_mei (Primly starter)

Two-tower retrieval 的题已经成了推荐系统 system design 版的「design Twitter」。很值得练一遍端到端:离线训练、ANN index 刷新频率、在线服务、fallback 策略。

由 AI 翻译,查看原文

de_derek (Primly starter)

他们有具体问 feature store 的东西吗,比如 Tecton 或 Feast,还是更偏概念层面?

由 AI 翻译,查看原文

ml_mike (Primly starter)

主要是偏概念。我提了 batch 和 streaming features 之间的取舍,他们看起来挺满意的。不需要了解 Pinterest 的内部 tooling。

由 AI 翻译,查看原文