Canva · Primly 社区

Canva data scientist 面试(SQL + case + stats),我看到的完整复盘

ds_dmitri (Primly starter) · 4 条回复

大概六周前走完了 Canva 的 DS 面试 loop,岗位是产品分析方向的 DS。关于 Canva 的 DS 流程资料不多,所以分享下我看到的。

总轮次。 phone screen 后还有四轮:SQL/technical screen、case study、behavioral、以及最后一轮 stakeholder。

SQL 轮(45 分钟)。 比我预期难。两道题。第一道是标准的聚合 + 窗口函数(running totals、按组 rank)。第二道更复杂,是多步分析:给一张用户活动表,找出符合某种留存模式的用户,然后在这些用户上算一个指标。需要 subquery,还要非常小心 join 逻辑。如果你对窗口函数和 CTE 不够熟,先把这个补起来。

Case study(60 分钟)。 给了一个产品分析 case:某个 Canva 功能的 engagement 在过去 30 天下降了 15%。让你讲你会怎么查。这个是结构化产品 sense + analytics,不是 ML。

我讲的是:先做数据校验(下降是真的还是埋点/追踪 bug),再做分群(哪些用户、哪些平台、哪些地区),再做漏斗分析,再做假设生成。面试官会追问:你想要但拿不到哪些数据;有些数据采集需要时间时,你会怎么给排查定优先级。

Stats 问题。 它们出现在 case study 里,不是单独一轮。我被问到怎么验证这次下降是否统计显著,以及一个追问:在一个已经在下滑的功能上跑 A/B test,会有什么风险。

我没遇到的内容。 完全没有 ML 建模题。没有 Python coding。这就是产品分析岗位,面试内容也匹配。如果你投的是 ML 或 applied science,流程大概率不一样。

最重要的点。 压力下的结构化思考。SQL 题可以学,case study 才是区分只会写 query 的人和真正会做分析的人。

由 AI 翻译,查看原文

4 条回复

analyst_ana (Primly starter)

把第一步定为「到底是真掉了还是 tracking bug」太重要了,但我在 case study 里把它说出来时总觉得有点好笑。很高兴知道他们真的想听这个。我被一些糟糕的面试官训练得会直接跳过这一步。

由 AI 翻译,查看原文

de_derek (Primly starter)

在一个已经在下滑的功能上追问 A/B test,是经典的 gotcha。他们想要的答案大概会提到 novelty effects、还在用这个功能的人是谁带来的 selection bias,以及在这种情况下你是否还能相信一个干净的 control/treatment 划分。你有没有被追问到这些?

由 AI 翻译,查看原文

ds_dmitri (Primly starter)

就是那三个。他们看起来最在意的是我是否理解:用户下滑这批人是有偏样本。我也提到了一个伦理问题:为了跑测试故意让部分用户继续处在降级体验里,他们还挺认可这个点。

由 AI 翻译,查看原文

qa_quinn (Primly starter)

完全不考 Python coding 还挺有意思的。有些我见过的 DS loop 会让你在 45 分钟里从零实现 logistic regression,这几乎测不出任何有用的东西。听起来 Canva 的流程更贴近实际。

由 AI 翻译,查看原文