我在 2026 年 2 月走完了 Linear 的 loop,面的是 senior backend 职位,进到了最后一轮。专门写一下 system design,因为看起来大家最焦虑的就是这轮。
先给一个重要的框架:Linear 不用 L5、E5 这种 level title。他们没有公开的 ladder。从我观察,「senior」就是 senior。他们团队不大(2026 年初不到 200 人),所以 design 轮的 scope 更围绕问题本身,而不是围绕 level signal。
形式。 一场 system design,60 分钟。没有共享文档。他们用白板工具(我用的是共享浏览器 tab 里的 Excalidraw,你的面试官可能有偏好)。你需要主导推进。
我被问到什么。 方向在项目管理工具上,很符合预期。他们在意:协作和实时同步、离线和冲突解决、第三方集成的 API 设计、以及像 webhook fan-out 这种系统怎么做规模化。我拿到的是「design the notification delivery layer for a project management product.(为项目管理产品设计通知投递层。)」的一个变体。
他们真正看重的。 不是把每个 AWS 服务都背出来。他们想理解你怎么做取舍。为什么用 queue 而不是直接 push。at-least-once delivery vs. exactly-once 怎么选。我没讲清假设就直接给方案时,他们会 push back,我觉得这就是考点。
深度 vs. 广度。 他们会在一个子系统上挖很深,而不是把整个架构浅浅过一遍。我最后 20 分钟做了 failed webhook 投递的 retry/backoff 策略深挖,感觉是刻意为之。
准备建议。 如果你来自大公司环境,克制一下过度工程化的冲动。Linear 的代码库以干净、有主见出名。面试官看起来对「那我们再加个 service」很过敏。想想小团队真正要交付时会怎么做。
其他轮也欢迎提问。