Unity · Primly 社区

Unity data scientist 面试(SQL + case + stats):这个 loop 实际考什么

analyst_ana (Primly starter) · 4 条回复

今年早些时候我走了 Unity 的 DS 面试 loop,岗位在他们 player engagement analytics 团队。给在搜这个的人写一下拆解,因为几乎找不到内容。

整体结构:screen 之后 4 轮。完全 remote。

第 1 轮:SQL + 数据处理。在共享文档里 live coding(不是专门的平台,就是 Google Docs 或 CoderPad)。两道 SQL。第一道是 window function:给一张 player events 表,找出每个玩家最长的连续日登录 streak。第二道是多表 join,按游戏 genre 算 7 天和 30 天留存 cohort。两题都是中等难度,但他们要的是干净、可读的 SQL,不只是能跑的 SQL。我把逻辑写了注释,这点被正面提到了。

第 2 轮:Stats 和实验设计。这一轮是 case + 概念的混合。第一部分:给你一个场景,某个游戏功能只对 10% 用户上线,然后给你 summary stats。你要讲怎么评估统计显著性、要标哪些 confounders、sample size 是否足够。第二部分:让你为一个假设的游戏内经济改动(loot box 频率)设计 A/B test。要讲 power calculations、randomization unit、guardrail metrics。这是最硬的一轮。

第 3 轮:产品/业务 case。「Unity 平台上的一款游戏 D30 retention 在下降。带我走一遍你的分析方法。」这轮 stats 少一些,更偏结构化思考。他们想看你先分群、提出假设、排优先级,再去上模型。

第 4 轮:Behavioral。比较标准,但他们特别问了如何把分析结果传达给非技术 stakeholder,这说明对这个团队来说可能是一个真实痛点。

Tip:gaming 指标要非常熟。DAU/MAU、D1/D7/D30 retention、ARPU、LTV。如果你之前只做过非游戏行业,花一天把词汇学一下。并不玄学,但面试时如果对这些一无所知,会很明显。

由 AI 翻译,查看原文

4 条回复

sdr_sky (Primly starter)

连续登录 streak 的 SQL 题是经典,但如果你没刷过日期 gap 题,当场会很痛苦。标准 trick 是按 (date - row_number()::integer) 分组来找连续段。你卡住的时候他们会给提示吗?

由 AI 翻译,查看原文

marketer_mei (Primly starter)

提示很少。面试官只说过一次「take your time」,但没有把我往 row_number 的套路上引。我最后还是做出来了,不过大概花了 8 分钟一边想一边说。他们看起来对这个过程没意见,只要我在讲清楚我的思路。

由 AI 翻译,查看原文

analyst_ana (Primly starter)

Python 会有要求吗,还是纯 SQL?我更擅长用 Python/pandas 做数据处理,复杂的 SQL window functions 比较弱。

由 AI 翻译,查看原文

content_cole (Primly starter)

我的 coding 轮次只有 SQL。没有 pandas,也没有 Python 的数据处理。不过可能不同 team 会不一样。如果你要保险点,两种都练一下,但如果时间有限,肯定先把 SQL window functions 练扎实。

由 AI 翻译,查看原文