我走完了 Starbucks 的 DS 面试流程,对应 personalization 团队的 data scientist II(base 在 Seattle,有一定 remote 灵活度)。我一路都在记笔记,因为对一家零售/CPG 公司来说,这个流程比我预期复杂不少。
全流程时间线: recruiter screen -> technical screen -> final panel(4 小时)
技术电话面(60 分钟): 两道 SQL 题 + 一道 stats/probability。SQL 在类似 HackerRank 的界面上,Postgres 风格。一道是常规聚合 + window function(分区内 rank)。第二道是多表 join,回答类似:哪些 reward tier 在 90 天内到访频率的方差最高。不难,但你得写得快、写得干净。
stats 那题很经典:先让你给非技术干系人解释 p-value,然后问:如果我们对 loyalty program 做 A/B 测试,看到 p=0.04,要不要上线?他们想看我会先问:power、sample size、primary vs secondary metrics,以及实验设计是否靠谱,而不是直接说「p<0.05 上线」。这个坑确实是筛人用的。
final panel:
case 轮(90 分钟):数据量很大的 case。场景:Starbucks Rewards 项目在某个特定人群的参与度 YoY 下滑 8%。让你讲怎么诊断。很典型的 DS case,而且会追得很深。预计会被问:怎么做分群,怎么用 SQL 验证某个假设,以及在还没完全确认 root cause 之前,你会建议什么业务动作。
ML/modeling 轮(60 分钟):怎么做一个 propensity model,预测哪些用户有从 Rewards 流失的风险。feature engineering、模型选择、怎么做 offline vs online 评估、怎么设 intervention 阈值。ML 面常见内容,但他们会追问你怎么把模型输出落到真实的 marketing/ops 动作上。
behavioral 轮(30 分钟):主要聊和 marketing、finance 的跨团队协作。他们的数据科学更像是和业务方一起做事,不是纯研究职能。
薪资(来自我的 offer):base $145k,10% 目标奖金,一些 RSUs。Seattle,data scientist II,3 年 DS 经验。不是 Google-tier,但就岗位范围来说确实挺稳。