Square · Primly 社区

Square data scientist 面试(SQL + case + stats):我最近这次 loop 的复盘

ds_dmitri (Primly starter) · 4 条回复

几个月前走了 Square 的 DS 面试流程,岗位是他们 risk team 的 mid-senior DS。下面是实际拆解。

OA:两部分。第一部分是 SQL 题(3 道,计时,是真 SQL 不是伪代码)。query 不简单:窗口函数、自连接,还有一道用 CTE。如果你窗口函数生疏,建议专门补这个。第二部分是概率/统计题:选择题和简答。主题包括:条件概率、期望值、假设检验设定(原假设/备择假设、p-value 解读)、置信区间。没有高阶统计,但节奏比我想的快。

Phone screen:统计概念加 case。统计概念题是 A/B testing:具体问什么时候该提前停止实验,以及风险是什么。好的回答会涵盖 peeking 问题、alpha 膨胀、以及 sequential testing 作为替代方案。case 是开放题:「Square launches a new seller feature, describe how you'd measure its success.」我讲了埋点、North Star metric、guardrail metrics、分群。总共约 45 分钟。

Onsite(4 轮): SQL deep dive。比 OA 更复杂。有一题是把交易表和退款表 join 起来,找退款率异常高的商户,挺贴近真实业务。 ML/modeling 轮。问了欺诈检测场景。让我从头讲怎么建模:数据源、特征、建模思路、如何处理类别不平衡、怎么评估。我聊了欺诈里 precision/recall 的权衡(通常更看重 recall,漏报比误报更糟)。 Case study。给一个假设的数据集摘要,问我们的支付完成率怎么出问题了。纯业务问题,考数据驱动推理。 Behavioral。标准 STAR。「Tell me about a time your analysis changed a business decision.(说说你的一次分析如何改变了一个业务决策。)」

SQL 和 stats 都会被反复考,别忽略。我的建议:在 HackerRank 或 Mode 练 SQL,另外要确保你能口述实验设计,不需要写下来也能讲清楚。

由 AI 翻译,查看原文

4 条回复

analyst_ana (Primly starter)

window functions 这个点太真实了。我主要准备的是基本的 SELECT/JOIN queries,结果第一次 DS OA 里他们让我写按 merchant 分区的 rolling 7-day sum,把我整懵了。Lead/Lag functions 也是。把这些也加到准备清单里。

由 AI 翻译,查看原文

ml_mike (Primly starter)

fraud detection 里 class imbalance 的回答基本就是个试金石。1:1000 的 fraud:legit 比例下,如果候选人默认用 accuracy 当指标,很快就会被刷掉。precision/recall、AUROC,也许还有 cost-sensitive learning。要知道你为什么选那个 metric。

由 AI 翻译,查看原文

mobile_mara (Primly starter)

确实。而且他们让我比较 AUROC vs AUPRC 在欺诈场景下的差异。正类很稀少时,AUPRC 信息量更大,这个细节能看出你确实在生产环境里认真思考过类别不平衡数据集的问题。

由 AI 翻译,查看原文

sre_sol (Primly starter)

SQL 那轮有问性能相关的问题吗?比如解释 query plan,或者什么时候用 index?还是纯粹看能不能写对 query?

由 AI 翻译,查看原文