Uber SDE 面經分享 | Uber OA 70分鐘內完成4道 Coding快速通關 附面經

1,323Views

最近看到有說法認為 Uber 的SDE面試比較“水”,但是親身經歷下來並不是這樣的。整個流程很緊湊而且有一定難度,特別是OA和電面。 準備 Uber OA 不僅要掌握資料結構和演算法,還要合理安排時間與答題順序。下面是綜合多位候選人真實反饋整理出的覆盤指南。

Uber OA 基本情況

Uber OA 通常透過線上平臺完成,需要在限定時間內完成多道演算法程式設計題。特點如下:

  • 平臺型別:CodeSignal 或 HackerRank 型別的線上評測
  • 題量:一般 3~4 道 coding 題
  • 時長:約 70 分鐘
  • 內容:演算法與資料結構、邊界條件處理

整體難度浮動較大,有反饋稱包含 Medium/Hard 題,也有候選人認為難度適中。由於隨機性較高,既要穩紮基礎,也要能應對相對難題。

Uber OA – 70分鐘

形式:70分鐘內完成4道coding題。
難度分佈:個人感覺是2道Easy,1道Medium,1道Hard(我遇到的Hard是第3題)。
體驗:時間非常緊張。整體難度梯度明顯,Hard題有一定挑戰性。建議先解決Easy/Medium題,確保拿到基礎分,最後再攻堅Hard題。如果一開始卡在難題上,比較容易容易心態不穩而且時間也不太夠用。考察型別比較經典,可以嘗試提前針對性刷題(類似題目網上可以找到)。

今年秋招變化不大,還是四個coding,一般是兩道基礎,兩道medium,偶爾有hard,一般就是貪心,dp,滑動視窗的題,簡單說一下今天這場,先發兩題,這次四個coding都順利AC,70min時間緊,手速要快,題目難度浮動挺大的。

Uber OA Question 1

給定一個無向樹,先移除一條邊,得到的兩個子樹的和之間的差異,求這個最小差值。

思路:先計算整棵樹所有節點的權重和total,再用dfs遍歷樹,計算每個節點的子樹和subtree_sum,歷遍所有邊,每條邊計算刪除這條邊後形成的兩個子樹權重和差異,記錄最小值。

Uber OA Question 2

根據公交發車時間表和當前時間,確定自上次公交發車以來經過的時間。

思路:先把所有時間轉換成分鐘數方便計算。歷遍發車時間表schedule,保留所有早於等於分鐘數的班即已發車,並儲存為分鐘數列表。如果沒有發過車,就返回 -1。否則,計算當前時間和最近一班車發車時間的差,就是等了多久。

2. Phone Screen – 約45分

形式:面試官風格比較直接,自我介紹後立即切入正題。
重點:深度挖掘resume專案。面試官要求我從啟動背景、設計思路、技術選型、遇到的挑戰&解決方法以及成果和覆盤等多個不同角度詳細介紹了一個project。整個過程中會不斷follow-up細節。
體驗:壓力相對較大,問題細而且節奏快。面試前要徹底覆盤熟悉resume,確保能清晰、有條理地闡述peoject的細節,並能應對deep dive。準備不足容易在這一輪卡殼。

3. Onsite – 5輪,每輪約45分鐘

輪次安排:總共5輪,中間大概半小時休息。面試官很專業,溝通氛圍友好。

輪次內容:

  • Round 1 (Coding): 標準的演算法與資料結構考察。題目難度中等偏上,需要清晰溝通思路,寫出清晰程式碼並透過測試用例。
  • Round 2 & 3 (System Design): 繼續深入探討resume上的project,比電面細緻很多。涉及到了系統設計、技術權衡、擴充套件性、故障處理等。有些問題會根據project進行延伸,看面經好像是視級別而定。
  • Round 4 (HM): 這一輪比較注重軟技能和JD匹配度。內容主要是一些經典問題,部門業務介紹、團隊目標、職業規劃、個人優勢與劣勢分析、過往在學校/工作中的協作與解決問題例項等。由於前面project聊得比較透,這輪反而感覺很順暢。
  • Round 5 (culture fit): 主要考察BQ、團隊合作、Uber價值觀匹配。

常見誤區

  • 只刷 Easy 題,無法保證總分優勢
  • 忽略邊界條件,容易導致 Wrong Answer
  • 在難題上耗時過久,導致基礎題無法完成

Uber 面試體驗

現場面試強度很高,連續5輪對精力和專注力是很大考驗,會感到疲憊。但面試官普遍比較Nice,會營造輕鬆的討論環境。 Tech輪要紮實基礎,並且可以清晰斷表述,resume上的項目要經得起反复推敲。

ProgramHelp提供專業的OA代做,面試代面、面試輔助服務,如果你也需要我們的Uber OA代做、面試輔助服務,請立即聯繫我們

author avatar
Alex Ma Staff Software Engineer
目前就職於Google,10餘年開發經驗,目前擔任Senior Solution Architect職位,北大計算機本碩,擅長各種算法、Java、C++等編程語言。在學校期間多次參加ACM、天池大數據等多項比賽,擁有多項頂級paper、專利等。
END