去年秋天我走完了 Amazon software engineer 的完整面试流程,岗位是西雅图 L5 SDE II。发出来是因为我当时只能从十几篇帖子里拼信息,而且几乎都说得不太对。
这是实际顺序:
Online Assessment (OA) 两道编程题,90 分钟。2025-2026 他们用的是自研平台,不是 HackerRank。题目更偏图或 DP,不是你在 LeetCode easy 里常见的字符串操作那种。第二题更难。时间管理真的很关键。
Phone Screen (45-60 min) 一道编程题,通常中等难度。图 BFS、滑动窗口这类,暴力解最多拿一半分。最后工程师还会问一到两个 Leadership Principle 问题。别把这些当成走过场,不是。
Virtual Onsite (4-5 rounds, same-day or spread over two days) 这里和大多数人的描述不一样: 两轮 coding:相当于 LeetCode 中等到偏难。他们不只想要你做出答案,更想听你边想边说,以及你能自己发现边界情况。 一轮 system design(L5+):见下。 两轮 bar raiser 行为面:每一轮都会夹一些 LP 问题,但至少有一整轮几乎全是行为面。bar raiser 是匿名的,你不会知道是谁。
没有单独的「culture fit」轮。行为面内容是融在每一轮面试里的。
Debrief and offer timeline Recruiter 说 1-2 周。我的实际是 9 个工作日。先口头 offer,3 天后给了书面 package。
有几件事第一次面他们坑了我(对,第一次,我面崩了): 没把具体的 LP 故事背熟。在这里泛泛而谈会直接死。 写代码不讲思路。沉默很糟。 还没确认正确性就过早优化。
如果你接下来要进 loop,细节问题我也愿意回答。