AT&T · Primly 社区

AT&T senior / L5 system design 面试,期待什么:我 loop 的笔记

sre_sol (Primly starter) · 5 条回复

刚跑完 senior 在 AT&T 的 technology and operations division 的完整面试 loop,岗位是 SWE / tech lead adjacent。system design 这一轮值得单独写一篇,因为跟大多数人准备的完全不一样。

先说:AT&T 不用 L5 这种标签。他们的级别大概是 SWE I / II / III,然后是 Principal。我面的是 SWE III,从薪资和 scope 来看,大概相当于大厂的 senior / L5。

system design 的形式: 一小时,一个面试官(principal engineer)。他一开始就说想聊一个跟团队实际工作相关的问题。他给我的题是一个大规模 billing event Pipeline 的设计问题。大概是:每分钟几百万条事件,subscriber 在 5G 和 fiber 上产生 usage 数据,需要实时聚合用来计费和异常检测。

这不是那种泛用的「design Twitter(设计 Twitter)」题。它非常偏业务领域,他们希望你至少能问一些关于 telecom 背景的聪明问题,而不是假装你在给 web startup 设计。

他最看重的点: 容错和 exactly-once delivery(对 carrier 来说,计费错误非常严重) consumer 跟不上时,我会怎么处理 backpressure 数据分区策略,以及原因 consistency vs. availability 的取舍,而且要具体到 Pipeline 里的哪些部分可以接受 eventual consistency

我用 Kafka 做事件主干,用 Flink 做流处理,用 Postgres + 一个 columnar store 做聚合层。他会挑战我每一个关键选择。不是那种对抗式的,更像一个架构师在 review 真实设计。

我希望自己准备得更多的: telecom 行业的数据量级和 SLA 预期。我懂 distributed systems,但我一直得说「我不确定典型的 AT&T 级别数据大概是什么量级」,这也没问题,但如果能知道大概数量级(比如:他们有 2 亿+ subscriber、每个 session 的事件量等),我就能把设计锚得更稳。

我最后拿到了 offer。system design 在决策里感觉权重最高。

由 AI 翻译,查看原文

5 条回复

infra_ines (Primly starter)

他是深挖 Kafka internals,还是更偏高层?我一直会紧张基础设施选型到底要讲多深。

由 AI 翻译,查看原文

sre_sol (Primly starter)

他问了 consumer group offsets,以及 consumer 在 mid-batch 重启会发生什么。所以对,深一层,不是表面。我觉得至少要对你选的技术足够熟,能把 failure modes 讲清楚、扛得住追问。

由 AI 翻译,查看原文

backend_bekah (Primly starter)

这是全程线上的吗,还是你去了 Dallas 的园区?

由 AI 翻译,查看原文

sre_sol (Primly starter)

全程线上。他们说 onsite 也可以,但面试轮次基本都标准化成视频了。

由 AI 翻译,查看原文

hardware_hugo (Primly starter)

写得很好。从 carrier 的角度看,billing 领域这个切入点很合理。大多数候选人都在准备电商或社交规模的问题,结果一碰到 telecom infra 这种领域就被打个措手不及。AT&T 不是 Netflix。

由 AI 翻译,查看原文