Amazon 的 SDE 實習面試流程很高效:OA 通過後進入 兩輪 Virtual Onsite,沒有更多篩選。時間線大約一個多月——10 月底投簡歷,11 月初收到 OA(兩週完成),11 月下旬收到 VO 邀請。整個面試透過 Amazon 自家視訊工具 Chime 進行,兩輪都是 behavioral + coding 的組合,且 BQ 100% 圍繞 16 條 Leadership Principles。兩輪加起來基本決定結果,重要性都很高。
一、Amazon SDE 實習面試概覽
| 維度 | 詳情 |
|---|---|
| 流程 | OA → 兩輪 VO |
| 工具 | Amazon Chime(需提前下載測試) |
| 單輪時長 | 約 45 分鐘 |
| 單輪結構 | 自我介紹 + BQ + coding + QA |
| 關鍵 | BQ 全圍繞 16 條 Leadership Principles |
每輪都分兩部分:behavioral + technical。開場寒暄、自我介紹,然後 BQ,接著進入 coding。兩輪風格相似,但題目和側重點不同。
二、第一輪:兩道 LP 行為題 + 合併區間
2.1 Behavioral(約 20 分鐘)
兩道 BQ 都圍繞 Leadership Principles,全程用 STAR 結構。
第一題:"Tell me about a time when you had a conflict with a teammate and how you resolved it." 考察人際關係和衝突管理。我講了一次因分工不清導致責任重疊的情況:主動溝通釐清任務邊界,引導團隊重新梳理專案計畫,最終順利推進並提升協作效率。
第二題:"Tell me about a time when you had to learn something very quickly to complete a task." 考察壓力下的快速學習能力。我分享了臨時被要求用不熟悉的框架開發:短時間內查文件、讀開源專案,兩天內完成關鍵功能模組。
2.2 Coding:合併區間(口述題,無執行環境)
Amazon 的 coding 很特別:沒有線上題目展示,由面試官口述題目要求,你要自己理解、clarify 模糊點、解釋思路、寫程式碼,並在沒有執行環境的情況下講解測試。編輯器極簡,無 test case、無執行按鈕。
題目:給定一組可能重疊的區間,將所有重疊區間合併並返回結果。
思路轉化:排序 + 掃描線。先按起點排序,依次遍歷,當前區間與前一個重疊則合併,否則加入結果。
def merge_intervals(intervals):
if not intervals:
return []
# 必須先按起點排序,否則無法一次掃描完成合併
intervals.sort(key=lambda x: x[0])
merged = [list(intervals[0])]
for s, e in intervals[1:]:
if s <= merged[-1][1]: # 與上一個區間重疊
merged[-1][1] = max(merged[-1][1], e)
else:
merged.append([s, e])
return merged
口述要點:講清 為什麼排序是必須的(保證重疊區間相鄰)、合併邏輯邊界(相鄰端點是否算重疊、空輸入)。要能在腦中模擬程式碼、自訂 test case 描述輸出。時間複雜度:O(n log n);空間複雜度:O(n)。
三、第二輪:LP 行為題 + 島嶼數量
3.1 Behavioral(約 15-20 分鐘)
第二輪的 BQ 偏 Ownership / Bias for Action:
題目:"Tell me about a time when you took ownership of a problem that wasn't strictly your responsibility." 我講了在實習中發現一個被忽視的監控盲點,主動補上告警和文件、推動團隊採納的經歷,強調「主動承擔 + 推動落地」。
3.2 Coding:島嶼數量(同樣口述,無執行環境)
題目:給定一個由 '1'(陸地)和 '0'(水)組成的二維網格,計算島嶼數量。島嶼被水包圍,由相鄰的陸地水平或垂直連接而成。
思路轉化:經典 網格 BFS / DFS 連通分量。遍歷每個格子,遇到未造訪的陸地就計數 +1,並用 BFS/DFS 把整座島標記為已造訪。
from collections import deque
def num_islands(grid):
if not grid or not grid[0]:
return 0
rows, cols = len(grid), len(grid[0])
count = 0
for r in range(rows):
for c in range(cols):
if grid[r][c] == '1': # 發現一座新島
count += 1
grid[r][c] = '0' # 標記已造訪,避免重複計數
q = deque([(r, c)])
while q:
x, y = q.popleft()
for dx, dy in ((1, 0), (-1, 0), (0, 1), (0, -1)):
nx, ny = x + dx, y + dy
if 0 <= nx < rows and 0 <= ny < cols and grid[nx][ny] == '1':
grid[nx][ny] = '0'
q.append((nx, ny))
return count
口述要點:講清 為什麼找到一座島後要立刻把整片陸地標記掉(否則會重複計數)、邊界判斷(越界、空網格),以及是否允許修改原網格(不允許就用單獨的 visited 集合)。時間複雜度:O(rows × cols);空間複雜度:O(rows × cols)(最壞情況佇列大小)。
四、Lesson Learned
| 教訓 | 說明 |
|---|---|
| BQ 全圍繞 LP | 兩輪都有 BQ,要準備覆蓋多維度的 STAR 故事 |
| 表達比程式碼更重要 | 無執行環境,要靠語言把邏輯、邊界、test case 講清楚 |
| 時間管理 | 每輪 45 分鐘塞下自我介紹 + BQ + coding + QA,BQ 別講太細 |
建議平時按完整流程模擬節奏,而不是單獨準備每一塊——BQ 講太細,coding 部分就會時間緊張。
FAQ
Q1:Amazon SDE 實習 VO 有幾輪?
兩輪 Virtual Onsite。OA 通過後進入兩輪,每輪約 45 分鐘、均為 BQ + coding 組合,透過 Chime 進行。兩輪加起來基本決定結果,所以 BQ 和 coding 都要穩定發揮。
Q2:Amazon 的 coding 為什麼沒有執行環境?
Amazon 的 coding 由面試官口述題目,編輯器極簡、不能執行、無 test case。這要求你程式碼邏輯必須正確清晰,還要能在腦中模擬執行、口頭描述輸出和邊界條件。
Q3:兩輪 BQ 大概問什麼?怎麼準備?
全圍繞 16 條 Leadership Principles,常見有 conflict resolution、快速學習、ownership、bias for action。建議提前寫好覆蓋 Ownership、Customer Obsession、Bias for Action 等多個維度的 STAR 故事。
Q4:每輪 45 分鐘怎麼做時間管理?
自我介紹簡短、BQ 用 STAR 控制時長、留足 coding 時間。BQ 講太細會擠壓 coding,平時按完整流程模擬節奏最有效。需要的話,我們的 VO 輔助 / 面試輔助 可以幫你按真實節奏做兩輪限時模擬。
正在準備 Amazon SDE 實習 VO?
Amazon 實習兩輪 VO,BQ(LP)和口述 coding 一樣關鍵。如果你想要合併區間 / 島嶼數量這類口述編碼的限時陪練、LP 故事打磨,或兩輪 VO 的完整節奏複盤,歡迎交流:發職缺 JD 先做題型與 BQ 預測,再排練習計畫,也支援 VO 輔助 / VO 代面 / 面試輔助 的即時對接。
立即新增微信 Coding0201,獲取 Amazon 實習 VO 真題與陪練。
聯絡方式
- 微信:Coding0201
- Email:[email protected]
- Telegram:@OAVOProxy