2026 年初我刚完成 Sony(SIE,San Mateo)的 senior SWE 流程。趁还新鲜写一下,因为我当时准备的时候几乎没什么资料。
system design 轮 60 分钟,两位面试官。一位是 hiring manager,另一位是来自不同团队的 staff engineer。形式是: 大概 5 分钟寒暄和岗位背景 题目:设计一个可扩展的实时通知投递系统。他们说是千万级 PlayStation Network 用户,包含 push、email、in-app 的组合 剩余时间:在 Miro 上画图(远程面试),我主导,他们全程提问
他们真正看重的点:
可靠性优先于吞吐。 我一开始在优化延迟,staff 的工程师把我拉回来了。PSN 的宕机会登新闻。他们想看你有没有考虑过 graceful degradation、重试逻辑、circuit breaker。
数据建模。 他们比我预想更久地追问 schema 选择:什么放 Postgres,什么放 Redis,什么放 Kafka,为什么。
跨团队依赖。 有个时刻 HM 问:如果下游团队的 API 没通知就改了,我的设计怎么应对。这是个很好的信号,说明这对他们是真实痛点。
他们没像 FAANG 常见那样一开始就让我 2 分钟内估 QPS。更探索式,白板上的数字更少。
我面的是我理解的 L5 对标级别(他们有自己的内部 level,不用 Google 的 L1-L9 梯子)。如果你面的是 senior 级别,system design 会更像真实对话,而不是表演。
我希望当时多准备的一点:failure modes。比如大作上线时通知风暴怎么处理,怎么做优先级。要有答案。