本文來自微信公眾號: 碳基智 ,作者:碳基智
1
我的好朋友,前阿里P9,架構師華仔老師曾經(jīng)對負責穩(wěn)定性的程序員兄弟們做過一番評述,生動地描繪了他們長久以來所面臨的窘境,他化用了扁鵲三兄弟的典故解釋了這個問題。
這里面存在一個“神醫(yī)悖論”,魏文侯問扁鵲三兄弟中誰的醫(yī)術最高明。扁鵲回答說:“長兄最善,中兄次之,扁鵲最為下?!北怡o醫(yī)術精湛,神醫(yī)名聲遠播,為什么扁鵲卻認為大哥二哥比他強呢?
扁鵲解釋說:大哥治病于病發(fā)之前,一般人不知道他事先除去了病因,故而他的名氣無法傳出去;二哥治病于病情初發(fā)之時,一般人以為他只能治輕微小病,故而他的名氣只及本鄉(xiāng)里;而扁鵲治病于病情嚴重之時,所以他們認為扁鵲的醫(yī)術最高明。
在建設高可用系統(tǒng)的時候,一樣會遇到“神醫(yī)悖論”。不管公司是有專門的SRE團隊,還是各個團隊的直接負責系統(tǒng)高可用;也不管公司是為了可用性做了很多基礎系統(tǒng),還是各個團隊靠人力來保障可用性,都會面臨這個問題:
你怎么證明你的可用性做得好?你的可用性投入是有很大價值的?
2
前一陣有在大廠做穩(wěn)定性模塊負責人的老哥跟我吃飯,席間吐槽聊到了最近公司要裁員,他必須解決掉至少2-3個人員指標。
他很為難,因為本來穩(wěn)定性相關的人手已經(jīng)捉襟見肘,還給他干掉2-3個人這平臺還要不要了,出事了最后不還是他背鍋,現(xiàn)階段的AI別說給他替代部分工作,就是別把本來就風雨飄搖的穩(wěn)定性指標搞崩都不錯了。
他咬著牙跟我說:
靠!我都想把那幾個能力強的干掉,然后讓整個平臺都崩掉,我再帶著他們?nèi)?chuàng)業(yè)好了!
我呵呵笑了,一般這么說的人都只是口嗨,過重的職業(yè)道德包袱之下,根本做不出這種事來。
降本增笑的邏輯之下,每個負責穩(wěn)定性的程序員都是帝國的糊裱匠。
3
我的另一位朋友,B站的毛劍老師,在穩(wěn)定性這個圈子里已經(jīng)成為了一種另類的圖騰。
比如前兩年網(wǎng)易云音樂宕機之后,立馬有人翻出來該團隊不久前所做的機房遷移方案,一通轉(zhuǎn)發(fā)給人搞得人盡皆知。
于是我寫了篇文章說,此情此景,毛老師可能打了個噴嚏。毛老師轉(zhuǎn)發(fā)了這篇文章說,勿cue。
穩(wěn)定性建設是一個不得不去做,卻又很難說做得有多好的事情。但技術團隊費了那么大的精力去做這個事,得讓老板們知道背后的工作價值,于是寫了一篇技術方案的總結文章。然后出事故了,被挖出來嘲諷,草臺班子再添一員。
心理苦啊。
4
如果要去總結穩(wěn)定性程序員的困境,我甚至可以羅列出9層:
1干得越好,績效越難寫
業(yè)務程序員靠制造變化獲得功勞,穩(wěn)定性程序員靠阻止變化失控證明價值。問題是,失控被阻止以后,功勞也一起消失了。
2責任無限,權限有限
典型的權責倒掛,業(yè)務團隊獲得快速上線的局部收益,但潛在故障成本被轉(zhuǎn)移給穩(wěn)定性、客服、運營和值班人員。
3永遠困在救火-沒時間做穩(wěn)定性改造-繼續(xù)救火的循環(huán)里
大廠嘴上招的是穩(wěn)定性工程師,實際使用方式卻像一支永遠在線的技術物業(yè)。
4自動化越成功,剩下的事故越變態(tài)
自動化本身就存在一個經(jīng)典悖論,當日常、簡單、重復的問題被機器處理以后,人類要接管的往往都是那些沒接住可以直接跑路的P0事故。
5值班不只消耗時間,還有持續(xù)性的警覺
墨菲定律有言,如果有可能發(fā)生事故,事故就一定會發(fā)生。但如果程序員始終處在睡覺不敢靜音,下班不敢不帶電腦,洗澡還要拿著手機的狀態(tài)里,最終都是對人的持續(xù)性消耗。
6復盤號稱無責,實際經(jīng)常開成批斗大會
無責復盤往往只是開場白,就像一句體制內(nèi)的原則上同意一樣,你知道什么意思。當事故復盤與績效處罰綁定以后,復盤的目標就不再是尋找系統(tǒng)崩潰的真相,而是找到一個能背鍋的小可愛。
7懂得很多,簡歷卻不好寫
優(yōu)秀的穩(wěn)定性工程師啥都要懂,網(wǎng)絡、數(shù)據(jù)庫、操作系統(tǒng)、分布式系統(tǒng)、中間件……但寫簡歷的時候,卻很難精準地向用人市場展示出自己的價值。
8經(jīng)常吃力不討好,被業(yè)務團隊厭惡
穩(wěn)定性團隊要搞好穩(wěn)定性,就要收斂權限,要增加管控,要搞壓測,要暫緩上線……業(yè)務團隊往往認為其存在對自己是一種卡點。但,一旦放行,事故要負責;不放行,又會被diss。
9 AI正在把穩(wěn)定性工程師變成屎山管理員
上游借助AI一天可以生成過去一周的代碼量,下游仍要靠人類逐行審查、建立監(jiān)控、處理依賴和承擔線上后果。
寫代碼的人提效了,審代碼的人擁堵了,處理事故的人加班了。
你說他們苦不苦。
