如何幫新人裝噴射背包,又讓老 SRE 保持鋒利?
投資新進 SRE 的訓練讓他們更快達到熟練。SRE 團隊建立在信任之上——你必須相信 On-Call 同事懂系統怎麼運作、能診斷異常、會適時求援、能在壓力下行動。
因此教育的問題不只是「新人 On-Call 前要學什麼」,還有:
- 老人怎麼評估新人準備好了?
- 怎麼讓新人的好奇心回饋到老人?
- 哪些活動能讓全體受惠?
學員學習偏好不同——沒有單一最佳方法,但有一些好的做法與相應的反模式。
推薦做法 vs. 反模式#
| 推薦 | 反模式 |
|---|---|
| 設計具體、循序的學習體驗 | 用 ticket / alert 海洗禮,「丟下水池」 |
| 鼓勵逆向工程、統計思考、從第一原理出發 | 只用 SOP、checklist、playbook |
| 慶祝事後檢討分析失敗 | 把 outage 當機密埋掉以避咎責 |
| 在真實工具上製造「受控故障」讓學員修 | 第一次修系統發生在已 On-Call 後 |
| 全隊角色扮演假想災難 | 培養出獨佔知識的專家 |
| 提早 shadow On-Call、交換筆記 | 還沒整體掌握就推上主 On-Call |
| 讓學員修訂 On-Call 訓練計畫的部分章節 | 訓練計畫被視為「不可動」的聖典 |
| 給學員實質的專案工作 | 新專案都給資深,新人撿剩菜 |
一個藍圖#

Figure 28.1: 讓 SRE 上手 On-Call 的藍圖
時間軸(由上而下):
- 剛進來什麼都不懂 → 讀 postmortem、從第一原理逆向工程
- 學了一些 → shadow On-Call、修正過時文件
- 隨時間累積專案規模與所有權
- On-Call 後學習更自主、無邊界——保持持續學習
並列「抽象 ↔ 應用」兩端的活動,覆蓋各種學習偏好。
初期:結構勝於混亂#
「Trial by fire」反模式:
John 進公司第一天就被丟所有新進 ticket,「儘量問人,最後就會通了」——這種做法可能產生一些頂尖運維者,但會讓很多有能力的工程師流失。
它假設「工作可全靠做來學」——若 ticket 真能覆蓋所有所需知識,那這不該是 SRE 職位。
學員會問:
- 我現在在做什麼?
- 我有多少進展?
- 還要多久才能 On-Call?
累積且有序的學習路徑#
給新人「能看見路」的學習順序。對使用者前台服務,推薦的順序:
- 一個請求如何進入系統(網路、DC 基礎、前端 LB、proxy)
- 前端服務(app frontend、log、UX SLO)
- 中層服務(cache、後端 LB)
- 基礎建設(backend、運算資源)
- 串起來(debug 技術、升級程序、緊急情境)
Google Search SRE 用一份「On-Call learning checklist」呈現——每個元件含:
- 對接的前後端與 SRE 專家、開發者聯絡人
- 必讀的文件
- 必懂的關鍵知識點
- 理解度檢核問題
它不直接記程序、診斷步驟、playbook,而是著重「未來不會過時」的內容:聯絡人、最佳文件指引、需內化的基本知識、必須被回答的問題。
分層存取(Powerups)#
完成 checklist 各節能逐步解鎖更深的系統存取權——先 read-only、後可變動 production,類似電玩升級。
具體專案,不是雜事#
SRE 是 problem solver——給他們一個真正的問題解。
早期所有權能促進信任:資深會主動向新人請教其負責的元件。
好的入門專案範例:
- 做服務端「對使用者可見」的小改動,全程跟到上線——理解 build/release toolchain,培養對開發者的同理
- 為盲點補上監控——逼新人用「監控邏輯」對照「系統實際行為」
- 把不算太痛但沒被自動化的痛點自動化——傳達「除瑣事」的價值觀
培養:逆向工程師與即興思考者#
SRE 必備三項心智:
- 逆向工程:碰到從沒見過的系統能搞清楚它怎麼跑
- 統計式思考:規模化異常需要統計而非程序式思維
- 臨機應變(improv):SOP 失靈時能即興應對
一堂代表課:逆向工程一個生產服務#
「Google News 全隊去百慕達三角郵輪、30 天沒聯絡——你們是新任 SRE 團隊,請接管服務。」
學員從瀏覽器追蹤請求路徑,每階段練習用多種方法找出元件間連線——避免漏掉。途中課程刻意「壞掉」一個元件讓學員用排障技巧找出。
強調「不要只用一種方法找連線」——這直接打造防禦縱深的問題解決習慣。
5 項實用做法#
1. 用真實事件演練(Wheel of Misfortune)#
拿過去一次真實故障,分配角色「重演」——當時的 IC 出席讓場景逼真。新人因此預演了還沒輪到的災難類型。
2. 鼓勵新人讀大量 postmortems#
不只本團隊,也讀其他團隊的——讓新人見識系統失敗的各種樣態與優秀分析範例。
3. 提早讓新人 shadow On-Call#
shadow(陪坐 On-Call)是巨大的學習加速器:
- Reverse Shadow:新人 On-Call 並嘗試處理,資深在旁監看
- 結束後雙方對比筆記
不要急著把新人推上主 On-Call。
4. 讓新人修訂 On-Call 訓練計畫#
新鮮的眼光能發現「老人覺得理所當然但其實不寫不行」的盲點——同時讓計畫保持新鮮。
5. 不斷迭代與資深的學習#
訓練不是「上完課就好」——持續演練(Wheel of Misfortune、災難復原日 DiRT、reading club)讓資深也保持鋒利。
沒有不需學習的 SRE——只有不繼續學習的 SRE 會退化。
結語#
加速 SRE 不是把人丟進火堆——是用結構化、序列化、體驗豐富的訓練,讓信任感、技術深度與工程文化共同累積。當新人準備好獨自 On-Call 時,他們應當:
- 對系統有完整的心智模型
- 能用第一原理推理未見過的問題
- 在壓力下能採取理性而非機械式的行動
- 能改良訓練計畫與工具,讓下一位新人走得更快