待命排班
十秒產生公平的待命輪值:列出團隊成員,選擇每班時長,選定開始日期,即可得到按你所需週數向前排的輪流日曆——附每人班次計數,讓公平看得見,而不是靠承諾。列印出來,下載為 CSV,貼到團隊真正會看的地方。一切都在你的瀏覽器中執行;你的名單不會傳送到任何地方。
班次計數
| # | 從 | 到 | 待命人 |
|---|
在時間範圍內開始的班次會完整顯示,所以最後一班可能在範圍結束幾天後才結束。節假日和休假的調班由你們自行安排——這張表是調班的公平基準。
是什麼讓輪值公平
待命的公平不是一種感覺,而是一種算術屬性:次數相等、順序固定、提前公布。嚴格的輪流制天生具備這一點。在任意整數個輪次裡,每位成員承擔的班次完全相同;在不滿一個輪次時,計數最多相差一次——這正是本頁面在日曆旁列印班次計數的原因。當人人都能數清楚,就沒有人需要靠信任。這種做法避開的失敗模式是手工維護的試算表:編輯表格的人默默吞下沒人想要的班次,或者「以後再均攤」始終沒有兌現,某位工程師最終發現自己扛下了全年的三分之一。
公平的另一半是可預見性。提前十二週公布的輪值讓人能圍繞自己的班次安排假期、婚禮和週末,並趁還有時間時協調調班。週五下午才公布、下週一就開始的輪值,技術上與提前公布的是同一張表,實際上卻是另一份工作。要排得足夠遠,公布在團隊真正會看的地方,並把調班當作兩個具名的人之間的交換——絕不要把它變成讓別人的週末無聲消失的編輯操作。
如何選擇班次時長
班次時長是交接開銷與集中痛苦之間的權衡。短班次——一次一天——把負荷攤得很薄,卻讓交接成倍增加,而每次交接都是上下文掉在地上的機會:下午六點診斷了一半的故障,到早上九點就成了謎。短班次還會把每個人的睡眠都切碎一點,而不是把某個人的切碎很多,聽起來更仁慈,卻往往並非如此。長達一週的班次只交接一次,讓待命者真正摸清這一週故障的形狀,也讓負擔一目了然——你能指出自己扛過的那一週。多數小團隊最終選一週。跟隨太陽的團隊是例外:當團隊跨時區時,一「天」的待命可以只是一個地區的工作時間,每日輪換便不再是負擔,而成為這項工作自然的形狀。
相關工具:SLA 錯誤預算計算器把你的可用性目標換算成這套輪值要守護的停機分鐘數,備份保留計算器則規劃凌晨三點你會去找的那些還原點。
延伸閱讀:一套可靠性日常——把待命輪值、備份保留和錯誤預算放在一起規劃,作為一個習慣,而不是三件分開的煩惱。
常見問題
是什麼讓輪值公平?
次數相等、順序固定、提前公布。嚴格的輪流制保證:在任意整數個輪次裡,每位成員承擔的班次完全相同;在不滿一個輪次時,計數最多相差一次。本頁面產生的正是這種輪值——沒有加權、沒有隨機,所以沒有人需要為表格上輪到誰而爭論。
每班一週比每班一天更好嗎?
對多數小團隊來說,是的。每日輪換交接不斷,而每次交接都是上下文掉在地上的機會;它還會把破碎的睡眠散布到整個團隊。一週的班次把痛苦集中起來,讓待命者有時間摸清這一週的故障模式,也讓調班更容易安排。每日輪換的價值在跨時區的跟隨太陽團隊:一「天」是某個地區的工作時間。
排班表應該提前多久公布?
要提前到人們能據此安排自己的生活——十二週是常見的範圍,本頁面最長可排一年。提前公布正是把待命從伏擊變成約定的關鍵。調班仍然會發生;公布出來的排班表只是讓調班成為明確的交換,而不是悄悄累積的怨氣。
排班表會考慮節假日和休假嗎?
不會——這是刻意的。本頁面產生公平的基準輪值。然後由現實生活來編輯它:把與節假日和休假衝突的班次調換掉,並把調班記錄在團隊真正會看的地方。一個試圖模擬每個人的日曆的產生器需要存取那些日曆,而你的名單恰恰是不該貼到陌生人伺服器上的東西。
我團隊的名單會被傳送到任何地方嗎?
不會。輪值是純粹的日期運算,完全在你的瀏覽器中執行。你輸入的任何內容都不會離開頁面——根本沒有任何伺服器呼叫,這也是頁面載入後可以離線使用的原因。