我走完了 oracle 的 DS 面试 loop,岗位在 customer success analytics team。分享下拆解,因为 oracle 的 DS 流程比大多数公司都更怪,准备时我也找不到什么具体信息。
总共 4 轮:
round 1:sql screen(45 分钟,live coding)。 这是我所有面试里做过最难的 SQL。不是那种 aggregate-and-group 的。他们给了一个 multi-tenant 云计费数据库的 schema(revenue、usage_events、customers、contracts),然后让你写 query:找出最近 30 天实际 usage 超过合约上限的客户,并按 product line 拆分。要求:window functions、CTE、date math、self-joins。如果你要面 oracle DS,SQL 才是主菜,不是热身。
round 2:stats / probability(45 分钟)。 两道题。第一道是 bayesian updating:你有个模型预测客户 churn,这个模型在训练集上 85% accurate,你怎么评估它在生产环境里的实际有用性。他们想听 base rates、precision vs recall 的取舍,不只是「accuracy 会误导」。第二道是 AB test 设计:你需要多少观察值,null/alternative hypotheses 是什么,以及如果 day 3 指标看起来很差,你怎么处理 early stopping。
round 3:case study(60 分钟)。 他们提前 24 小时邮件发了 dataset + business question。我需要自己做分析并讲解发现。问题大概是:找出哪些 oracle cloud regions 在 customer adoption 上相对其 launch maturity 表现不佳。非常开放。他们看重你怎么结构化问题、你选了哪些指标、你的建议是否可执行。
round 4:behavioral / stakeholder。 非常聚焦:你有没有和 sales 团队合作过,你有没有向非技术领导汇报过,你能不能把一个对方不想听的模型结论讲清楚。
很明显的模式:oracle DS 非常看重 SQL 和业务沟通。stats 轮是有,但门槛不是 research-lab 那种。如果你来自纯 ML 背景,需要换挡。