我最近过了 Scale AI senior 的 system design 轮。跟我按 FAANG 风格准备的预期不太一样,所以写下来也许能帮到人。
首先:他们非常看重数据吞吐和运维正确性,不只是纯粹的分布式系统理论。Scale 的核心业务是 human-in-the-loop 的数据标注,所以设计题往往会映射到那个世界。想想 task queue、worker 分配系统、标注 pipeline、对人工 worker 的 rate limiting、QA 抽样层。
我实际拿到的 prompt 大概是:设计一个系统,把标注任务在大规模下路由给合适的人类 worker,并内置质量保证。故意给得很模糊,目的就是看你怎么定范围。
他们在 debrief 里提到的考察点: 一开始就要把问题范围说清楚。我前 8 分钟在确认吞吐需求、延迟目标、一致性要求 实用的存储模型。他们会挑战我第一反应(sql),想听我对关系型和列式在我描述的查询模式下的取舍 明确处理 worker 状态和部分失败。这是我互动最多的部分:幂等性、重试语义、dead letter queue 监控和可观测性层。不需要讲很深,但你得点名你会埋哪些指标
对 L5 来说,他们期待你在几乎没有提示的情况下推进,并能为自己的选择辩护。面试官的状态更像是一个初级队友在问「为什么不用 X」。
时间:60 分钟,过得很快。我大概 15 分钟 scope,25 分钟设计,10 分钟 drill-down,10 分钟 Q&A。
没有太多 CAP theorem 的理论题,更偏落地而非学术。准备贴近他们真实在做的系统。