最近又幫助了一個同學完成了 Amazon VO 三輪面試,覆蓋了DP、BFS等多個板塊,難度不算很大,但對於領導力原則、基礎算法的掌握和技術表達的清晰度要求比較高,如果平時刷題不注意這些方面,面試很容易卡殼,一起來看一下題型吧。
Amazon VO 第一輪
第一輪是自我介紹之後就問一些操作系統相關的問題,然後是一些技術問題,回答這類問題時,容易陷入 “只說流程,不說價值” 的誤區,所以在答題應體現量化標準比如用 “影響範圍(是否影響核心業務)、緊急程度(是否卡項目進度)、資源成本(我是否能獨立完成)” 三個維度判斷,而非只說 “先做重要的”。同時還需要體現向上溝通:超出職責的任務,要提到 “和領導同步我的優先級規劃,確認是否對齊團隊目標”,避免給面試官 “擅自決策” 的印象。
BQ:
- Tell me about a time when you went above and beyond for a customer.
- Describe a time when you had to take ownership of something outside of your direct responsibility.
- Tell me about a time when you had to work with a large amount of data or details to solve a problem.
Tips: 準備Amazon的BQ時,必須使用STAR模型來組織你的回答,並且在“Result”部分盡量用提升了多少效率、節省了多少成本、減少了多少客戶投訴來展示你的影響力。每個故事最好能體現1-2個領導力準則,這樣面試官也會對你表示肯定的。
Coding: 題目要求是合併K個有序鍊錶
思路:首先,可以用一個最小堆來幫忙。然後把所有鍊錶的頭節點都先扔進堆裡。接著,每次從堆裡彈出最小的那個節點,把它接到結果鍊錶上,然後把這個節點的下一個節點再塞回堆裡。最後,等堆裡空了,所有鍊錶就合併好啦。
Follow up:
- 如果鍊錶數量非常大,或者鍊錶很長,這個解法有什麼優缺點?如何優化?
- 如果不允许使用堆,你还能怎么做?
整場下來順利通過! Coding部分注意堆初始化、空鍊錶處理和節點next指針維護,這樣更有利於咱們作答。
Amazon VO 第二輪
第二輪的BQ是講述一次你為了滿足客戶需求而超出職責範圍的經歷和講述一次你需要快速學習新技術或技能來完成項目的經歷。
Coding的兩道題都挺簡單的,一個是給一個String,比如說“aaabbccca”,return不重複的char後面加上它的count,這裡的話就是“a3b2c3a1”。
然後第二道是給一個string list和一個string set,找到list裡面最短的包含這個set裡面所有string 的那個sublist。
Amazon VO 第三輪
最後一輪的BQ是一些常見問題:
- 如何處理緊迫的截止日期?
- 如何平衡多個優先級高的任務?
- 你是如何處理技術失敗的?
Coding是一個帶點OOD design 的題,要我寫一個 EventTicketSystem,大概是支持賣不同種類的票(比如演唱會、電影、體育賽事),要求考慮擴展性,比如以後加新類型票的時候不用大改邏輯。
我用了一個簡單的 factory pattern,把 ticket type 抽像出來,核心邏輯放在一個 ticket seller class 裡。 中間他有問我:如果以後每種票的價格計算規則都不一樣怎麼辦?我就講了下可以用 strategy pattern 去解耦,感覺這個點拿到了加分。
代碼量不小,我最後差不多卡著時間才寫完,面試官說 “That’s pretty aligned with what I expected”,然後還笑了一下。
想要快速通過 Amazon ng 的面試?
ProgramHelp提供專業的面試輔助,以豐富的知識儲備和強大的問題解決能力,為您的面試之旅保駕護航,輕鬆拿下Offer,如果你也需要Amazon VO面試助攻,面試輔助,面試代面等服務,請與我們聯繫。