為什麼是順序
評分沿著一條已知的路徑
系統設計的面試官打分看的是你怎麼推進:有沒有先固定需求、有沒有估算量級、有沒有為儲存選型給出理由、有沒有談一致性和故障。一個順序混亂的漂亮回答,得分低於一個順序正確的普通回答。
-
需求和量級放最前面
多少使用者、讀寫比例是多少、可接受的延遲是多少。沒有這些,後面每個選擇都缺少論據。
-
先約定介面,再講元件
有哪些呼叫、各自返回什麼。這才把一張好看的圖變成可討論的系統。
-
故障和一致性永遠放最後,但一定要有
副本延遲、快取掛掉、佇列積壓。這是最容易被忘掉的一塊,也最能拉開級別差距。
準備
之前往知識庫裡放什麼
你自己的推進順序
那六步,用你的話寫下來。助手記得你的順序,就會把你推向下一步,而不是臨時另起一套。
你常用的那些數字
磁碟延遲、網路延遲、一次往返的代價、常見吞吐量。口頭估算靠的就是它們。
你真正做過的系統
「你會怎麼做」這個問題,背後有一個帶真實數字的「我當時怎麼做的」,效果完全不同。
限制
兩條老實話
第一條限制
練習,不是真實面試
在招聘流程裡使用隱蔽輔助通常違反公司規則。我們主張的用法是模擬和覆盤自己的表現。
第二條限制
一次一份錄音,而不是整批遷移
已錄好的檔案是可以上傳的:「會議」區塊每次接受一個不超過 25 MB 的檔案——mp3、m4a、wav、ogg、flac、aac,以及 mp4 和 webm(取其音軌)。沒有的是整批上傳整個檔案庫;而且它消耗的分鐘數與實時通話相同。
常見問題
大家最先問的
它會給出完整架構嗎?
那不是目的。有用的回答指出缺的那一步,以及支撐選擇的那個數字——背誦一套現成架構,恰恰是面試官最先識破的。
一個人怎麼練?
開啟 Whisperer 把答案說出來,之後讀文字。你跳過的步驟在文字裡一目瞭然。
機器學習方向的設計面試能用嗎?
機制一樣,變的是推進順序。把你自己的順序存成筆記,助手就按它走,而不是按通用的那套。
完整錄一次模擬
然後在文字裡標出每一步是從第幾分鐘開始的。沒出現的那幾步,正是讓你拿不到 offer 的部分。