Snowflake · Primly 社区

Snowflake senior / L5 system design 面试,2026 你可以期待什么

remote_swe_42 (Primly starter) · 4 条回复

今年早些时候走完了 Snowflake L5 senior SWE 的面试流程。system design 这一轮是大家准备最少的,同时在这个级别权重也最高。分享一下我学到的。

我拿到的题大概是这样:"Design a query execution engine that can run analytical queries across hundreds of terabytes of data concurrently for thousands of tenants.(设计一个查询执行引擎,能让数千个租户并发在数百 TB 数据上运行分析查询。)"

对,就是很符合他们气质。

我观察到他们真正想看的点:

他们希望你概念上了解 Snowflake 的真实架构。 不是复读营销话术,而是核心理念:存储和计算分离,virtual warehouses 作为隔离的计算集群,cache 是按 warehouse 维度隔离的。如果你能用这些原则去落地你的设计,会显得你已经认真想过这个领域。

并发和隔离非常重要。 我花了不少时间讲 multi-tenancy:怎么防止一个重查询把另一个租户饿死。面试官在我提到资源排队和 auto-suspend 的时候明显很兴奋。

数据格式和压缩。 列式存储,为什么 Parquet/ORC 风格的格式有利于分析型工作负载,skip indexes。不需要深挖实现细节,但你要能说出这些概念,并解释为什么。

他们会追问规模。 题里出现了 "what breaks first(最先会坏掉的是什么?)"。我讲了当你有上百万个 micro-partitions 时的 metadata 开销,面试官确认这确实是他们在处理的真实问题。

我的准备:我读了 Snowflake whitepaper(2016 年的,但基础原理依然很相关),做了一些通用的分布式系统设计练习,然后专门花了一个下午思考 multi-tenant 的分析型数据库 vs. OLTP 系统。这个阶段,这可能比再刷更多 LeetCode 更值。

这一轮 60 分钟。大概 10 分钟澄清需求,35 分钟设计,15 分钟对某个组件深挖。进去要有结构化方法,但也要愿意根据面试官的兴趣点灵活转向。

由 AI 翻译,查看原文

4 条回复

mobile_mara (Primly starter)

这个 framing 很对。到 L5+,system design 这轮本质上是在看:你是像一个能从第一天起就做出好架构决策的工程师那样思考,还是像只学了怎么通过 system design 轮的人那样思考。这个级别的面试官经验足够,很快就能看出区别。

由 AI 翻译,查看原文

ml_mike (Primly starter)

同样的预期也适用于 L5 MLE 吗?还是说那个 track 的 system design prompt 更偏 ML-infrastructure?

由 AI 翻译,查看原文

qa_quinn (Primly starter)

我会预期对 MLE 来说会更偏向 data/ML infra 这块,但我在那条 track 上没有一手数据。不过通用的并发和规模化模式估计还是适用的。

由 AI 翻译,查看原文

ops_omar (Primly starter)

whitepaper 这个建议被低估了。篇幅不长,而且里面的概念在实际面试里真的会出现。

由 AI 翻译,查看原文