在做 System Design 時,可以有幾個階段來協助思考,分別是:
除了以上事情之外,定義出「什麼不在討論範圍內 (out of scope)」也是非常重要的,可以展示出「排定優先順序的能力」。雖然 System Design 範圍很大,但其實也是有不少模板和套路可以練習。可以多看看各式各樣系統的 high-level 設計,順便把其中自己不熟悉的知識補上。
- 釐清探索需求 Requirement,其中有還有分功能需求 和 非功能需求
- 架構 High-Level Architecture Design
- Detail Deep dive




