刚结束 Splunk 的一套 SWE 面试,backend 职位,在他们的 Search 团队。两天共 5 轮,全线上。细节如下:
第 1 轮: Recruiter screen。标准 30 分钟,主要聊为什么 Splunk、comp 期望、时间线。人还行。
第 2 轮: 和一个 senior eng 的技术面。一道中等 Leetcode 题(sliding window 变体),然后聊了 20 分钟架构。她一直在问「what would break at scale(规模起来后哪些地方会崩)」,我感觉这才是真正的信号。
第 3 轮(onsite day 1): 纯 coding。75 分钟两题。一题基本是图遍历,另一题更像自己设计数据结构。我第二题一开始翻车了,但靠把推理过程讲清楚救回来了。他们似乎更在乎思考过程,而不是完美解。
第 4 轮: System design。我拿到的是「design a log aggregation pipeline that can handle 1M events/sec.(设计一个能处理每秒 1M events 的日志聚合 pipeline。)」。明显就是他们的主场。如果你还没想过 Kafka vs. Pulsar 的取舍,或者怎么处理 backpressure,最好准备一下。
第 5 轮: Behavioral。两个面试官,4 个问题。非常结构化,follow-up 很多。「Tell me about a time you disagreed with a technical direction(讲一次你不同意某个技术方向的经历)」这题大概追了 3 层。感觉他们是在真的想弄清楚我怎么思考,而不是走流程。
拿到 offer。比我预期更关键的是 behavioral 的准备。