Mercury · Primly 社区

Mercury data scientist 面试(SQL + case + stats),我的经历

analyst_ana (Primly starter) · 5 条回复

我几个月前走了 Mercury 的 DS loop。按轮次拆开讲,因为我也喜欢这样读。

SQL round(45 分钟): 现场写 SQL,共享文档或他们自己的环境。题目从中等到偏难。一道是 window functions:计算每个账户 rolling 7-day 的交易量。另一道是多表 join,还带一些关于交易状态的棘手条件。他们在乎 query performance,不只是对不对。我提到可以加 index,面试官接着追问了「why that column and not another.(为什么用那一列而不是另一列。)」。问得很好。

Stats + experiment design(45 分钟): 这是我最没准备好的轮次。一道题:Mercury 要给 business accounts 上线一个新功能,设计一个 A/B test。听起来简单,直到他们开始追问:同一行业的 business accounts 之间的 network effects 怎么处理?你的 minimum detectable effect 是多少?要跑多久才能下结论?我一开始在 network effects 那块卡了一下,他们有引导我往下想,但我觉得那里丢了分。

Case / product analytics(45 分钟): 给了一个场景:transaction failure rate 周环比上升了 3%。带我走一遍你的排查。我这一轮发挥最好。我按维度拆:是不是某个 payment rail?某类 merchant category?有没有 time-of-day 的模式?是新客户还是老客户?我每问一个问题他们就补充一些信息,这也说明这一轮是偏协作的。

Behavioral(30-45 分钟): 标准 STAR,Mercury values。有一道题专门问怎么把分析结果呈现给非技术 stakeholder。提前准备一个故事。

整体: Mercury 的 DS loop 比大多数更偏重 SQL。stats 重要但次要。case 问题在考产品思维的比重不亚于数据技能。三块都要准备。

由 AI 翻译,查看原文

5 条回复

analyst_ana (Primly starter)

滚动 7 天窗口的函数题,我在其他 fintech 也见过。现在几乎像是 fintech DS 面试的标准题了。知道 Mercury 也会用这题挺有用。

由 AI 翻译,查看原文

de_derek (Primly starter)

从面试官视角看,这个关于索引的追问太绝了。太多 DS 候选人写 SQL 时从没想过表到了 1 亿行会发生什么。

由 AI 翻译,查看原文

ds_dmitri (Primly starter)

完全同意。而且在 fintech 里,交易表会很快变得巨大。如果你没法推理查询性能,上线到生产环境你会是个大问题。

由 AI 翻译,查看原文

finance_faye (Primly starter)

A/B 测试里的网络效应(network effects)问题真的很难。就算在 corporate finance,我们在尝试隔离某个产品改动对相关联账户的影响时也会遇到。这不是刁难,是个真实存在的问题。

由 AI 翻译,查看原文

Primly Team

在这种 DS loops 里,有个点经常被低估:你怎么表达不确定性和取舍,尤其是在 stats 和实验设计轮。

一个通常很落地的简单结构: 目标和主指标:这个测试要解锁什么决策。 随机化单位:按 user、account、org 还是 cohort,以及为什么。 干扰检查:明确问“could treatment affect control?(treatment 会影响 control 吗?)” 如果会,就提出 clustered design(按行业、网络、地域做随机化),或分阶段 rollout 并保留 holdouts。 护栏:故障、延迟、支持工单、欺诈风险。 时长和停止规则:提前承诺 MDE 或一个运营阈值,避免没计划就偷看数据。

常见翻车点是一上来就做样本量计算,却没有先处理 network effects 和正确的单位。

你在 stats 或 A/B 轮里遇到过哪个追问,让你下次会换一种答法?

由 AI 翻译,查看原文