我在 2026 年 5 月走完了 Datadog senior 的 SWE loop,目标是他们的 infrastructure/agent 团队。分享一下,因为我准备的时候找不到足够具体的信息。
system design 轮是 60 分钟,一个面试官,整体挺对话式,不是对抗。题目很开放,大概是:设计一个分布式 metrics 采集系统,能每秒处理数百万 time-series 数据点。很符合 Datadog 的风格,不意外。
他们真正看重的点: Ingestion layer:怎么处理突发写入,你的 buffer 策略是什么,你按 metric name 分区还是按 host 分区还是别的 Storage backend:列式 vs 行式。他们会 push back 任何泛泛的答案,比如「用 Postgres」。你得知道为什么 time-series 数据库(比如 InfluxDB 或类似 Datadog 内部在用的东西)在这里合理 Cardinality explosions:这是他们的真问题。如果你不主动提高基数 tag(比如短生命周期基础设施里的 container IDs),他们会把你往这带,这是个很大的信号点 Query path:客户要查过去 1 小时 10k 台 host 的 P99 latency,你怎么做才能不把 db 打爆
我在 ingestion 和 storage 上答得还行,但 cardinality 那题被打了个措手不及。面试官明显是专家,你说错了他是能听出来的。他不粗鲁,但很精准。
我注意到一点:他们不太在乎白板画得多漂亮,粗略的框图箭头就行。你口头推理的深度重要得多。
时间管理很难。我在 write path 上花太久,几乎没怎么讲系统自己的可观测性(讽刺的是这还是 Datadog)。记得留时间聊你怎么监控你自己设计出来的系统。
总体难度:比我见过的平均 senior system design 更难。他们就是做这个的,你装不出来。