我走完了 okta 的 DS 面试流程,岗位是 customer analytics team 的 mid-level。分享一下,因为网上几乎没有 DS 专属的流程介绍,我准备时只能从零散信息里拼出来。
轮次结构: recruiter screen(30 分钟) hiring manager screen(45 分钟) SQL/data skills(60 分钟) case/product analytics(60 分钟) stats and probability(45 分钟) behavioral(45 分钟)
SQL 轮: 比我预期难。他们用类似 CoderPad 的工具,给一个 mock schema(user activity 表、events 表、类似产品日志)。我拿到的问题: 找出在注册后 7 天内做了 action A 但没做 action B 的用户(典型 funnel,window functions) 按 cohort 计算 30 天 rolling retention 写一个 query 基于 session length percentile 标记异常 session
如果你对 window functions(RANK、ROW_NUMBER、LAG、LEAD)不熟,建议专门练这些。CTE 是默认要求。还会聊性能:「如果 events 表有 10B 行你怎么优化」。
case/product analytics 轮: 题目大概是:okta 想搞清楚为什么 enterprise 客户没有让所有用户都启用 MFA,你会怎么做?他们想听:假设提出、指标选择、分析计划,然后「你会怎么用这些发现做决策」。
stats 轮: 给非技术 stakeholder 解释 p-value 如果你只能让 20% 的新客户进入实验,怎么设计实验来测试新的 onboarding flow 描述一个你做的模型在技术上没问题,但业务用错了的情况
最后一个问题很棒,值得提前准备一个真实答案。
整体感受: okta 的 DS 门槛更像是严肃的 mid-level analytics bar,不是 research-heavy。我预期会更偏 ML theory,但实际更偏应用 SQL 和业务 case 判断。那种「这个指标为什么动了」的思考,比你能不能背熟 SVM 更重要。