1. 程式人生 > 實用技巧 >我是如何走上運維崗位的?談談新人入職運維發展的注意事項

我是如何走上運維崗位的?談談新人入職運維發展的注意事項

我是如何走上運維崗位的?談談新人入職運維發展的注意事項

我簡單分享了自己為什麼會走上運維這個崗位,一是責任心使然,出現問題時總是會主動衝在前面解決,另一個是在這個過程中技能提升得很快,很有成就感。不過當時受篇幅所限,並沒有完整說明,所以今天我想再來聊一聊這個話題。

聊這個話題還有一個出發點,就是當下業界對運維的認知和定位還是存在很多問題的,有不少貶低運維的言論,所以我想結合自己的經歷談談對這個事情的看法,期望能夠帶給你一些啟發。

我是怎麼開始做運維工作的?

我做運維是在加入華為1年後開始的。在華為內部,我從來沒有聽說過任何貶低運維的說法,反倒是從華為出來,才開始聽到一些言論,比如運維背鍋、運維層次低等等,當時感覺還有點怪怪的,這一點下面會再詳細講到。

我當時是在華為電信軟體部門,大家熟知的簡訊、彩信、智慧網、BOSS計費系統以及運營商客服系統等都是這個部門的產品。我到公司沒多久就進入了一個新成立的專案組,為運營商開發一個閱讀類網際網路產品,因為是工作後參與的第一個正式專案,從需求討論、方案選型、程式碼開發到上線這樣一路跟來下,幾乎傾注了我所有的熱情。當時完全是封閉式開發,除了吃飯睡覺,其它時間基本都用在這個專案上,週六日都是泡在公司的。

專案上線之後,基於運營商海量使用者的積累,業務量很快就增長上來了,按照慣例,各種系統問題、故障宕機也隨之而來了。當時我們團隊規模不大,大家也都是齊心協力,出現問題我們總是一群人一起衝上去解決問題。之所以有這樣的反應,主要是因為不忍心看到自己和團隊一手打造出來的系統出問題。在華為,軟體質量的榮譽感勝過一切。

因為我經驗尚淺,所以一開始都是跟在後面看著主管和老員工解決,後來對於一些疑難問題,我就會主動要求接過來研究一下,有時候一個問題要研究好幾天才會有些眉目,不過也是在這樣的一個過程中,隨著解決的問題越來越多,經驗也就越來越豐富,很快就成長了起來。

再加上我一直是出現問題後,第一個做出響應和衝到最前面的那個人,主管和團隊也對我有了足夠的信任和認可,也正是因為獲得了這樣的信任和認可,後來我得到的成長機會就越來越多。

這裡就分享一點

  • 敢於承擔責任,敢於表達自己的想法。特別是對於職場新人,只有承擔,且敢於承擔更多更重要的責任,才能夠快速成長起來。一些重要事項,主管肯定是優先安排最穩妥和靠譜的人去做,這個時候老員工的優勢會更明顯,作為新人或經驗尚淺的員工,如果沒有積極主動的態度和令人放心的表現,很多好機會往往就與你失之交臂了。

當時,我們解決完問題,不僅僅是內部解決完就好了,還要給客戶彙報。說簡單點,就是把問題原因、處理過程和後續改進措施,用客戶能夠聽懂的表達方式講出來。一般都是先用郵件傳送正式的報告,然後再當面做解釋和彙報。當客戶不理解、不認可的時候,你就要花更多的時間和精力想辦法去表達清楚。

說實話,我當時認為這是非常浪費時間的事情,我想要是把這些時間都花在技術研發上該多好。不過,多年以後回過頭來看,這個過程對於培養、提升自己的“軟技能”是很有幫助的,主要鍛鍊了以下幾個能力

  • 能站在客戶對方的角度考慮問題,或者說要有服務心態。很簡單的一點,你不能拿著一堆晦澀難懂的技術術語去給客戶解釋,而是得用客戶聽得懂的業務語言解釋。
  • 文字表達和口頭表達能力。不論是書面的還是口頭的,表達一件事情都要有清晰的邏輯,把前因後果理順暢,先有結論,然後分條陳述。我現在能寫這麼長篇幅的專欄文章,很大程度上也是受益於這個過程中寫報告的鍛鍊。
  • 從更全面的角度看待問題。有時候有些問題可能不僅僅是技術層面的問題,也可能出在其他方面比如業務邏輯、第三方、使用者自身以及資訊溝通上。一開始,面對這種問題我都是直接反饋說不是技術問題,跟我們沒關係,可以想到這樣的回答總是會被客戶詬病。慢慢地我才發現,即使問題最終不是由你來解決,也應該全面考慮問題,跟客戶一起討論最終的解決方案,這樣才會得到認可。後來我發現這是一個技術人員普遍存在的問題,比如,“我的程式碼沒問題”,“在我的電腦上是好的”等等,其實就是缺乏全面看問題的意識,也是缺少站在對方角度考慮問題的意識。
  • 首問負責,問題閉環。問題找到你,你就要端到端負責解決,最終要給客戶一個滿意的答覆,即使問題解決不了,也要能夠獲得客戶認可的反饋。而且,如果這個事情是比較複雜的,需要時間和一個過程來解決,一定要在過程中及時反饋,而不是遲遲不響應。一個最常見的反模式就是“這個跟我沒關係,你去找誰誰誰吧”,一句話就把客戶的滿意度給消磨沒了。

這麼多年工作經歷下來,我感覺對我個人職業發展幫助最大的,恰恰是上面這些良好的工作習慣,沒有這些好習慣的扶持,單純的技術技能成長很容易遇到瓶頸。而且,如果說技術技能是在不斷更迭變化的,上面這些做事的基本原則卻可以隨時隨地遷移使用。趁早養成良好的職業習慣,會對個人發展有巨大的好處。

對這個階段做個總結,我更願意承擔一些非常具有挑戰性的工作,成長得就比較快。同時,在客戶層面,我又相對比較願意表達見解和意見。雖然那個時候沒有什麼溝通技巧,也沒什麼表達技巧,甚至有些時候是笨嘴拙舌的,但是,很多時候技巧是次要的,最關鍵的是要敢於表達,當團隊需要這樣一個角色時,是不是有人能夠站出來承擔起這個職責。慢慢地我在客戶層面也得到了一定的認可和信任,成為一個真心誠意、關鍵時刻能靠得住的一個人。通過這樣一個階段,我不但在技能深度上有了積累,在廣度上也體現出了明顯的優勢。

我為什麼會把運維當作職業發展的方向?

這個階段大約也就1年左右,我的主管就開始跟我溝通,由我來組建這個產品的運維團隊,把線上運維、穩定性和部分客戶溝通工作完全交給我。

可能有些人覺得做運維是很低階的事情,讓你做運維就是讓你去填坑,其實對於這樣的言論以及今天開頭提到的什麼運維背鍋論,我是十分反對的。當然,更多的時候我也不是去解釋,而是靠做事情來證明。

說回到當時的事情上,當時主管在跟我溝通獨立帶一個運維團隊時,我的感受不僅僅是晉升層面的喜悅,更多的是因為能夠做運維而感到非常自豪。

為什麼會非常自豪,這就不得不提到華為內部,在當時來講,就已經有非常完善和先進的運維體系和運作機制了,我們一起來看一下。

在華為內部,運維是非常受尊重而且非常關鍵的崗位。如果你在研發團隊中一直寫程式碼,沒有做過運維工作,是很難晉升高級別崗位的。

所以華為的架構師、技術經理甚至是更高級別的研發主管,按照不成文的規定,都預設要在運維團隊輪崗過,然後再選拔出來。而且這裡面最最關鍵的是,運維這個崗位不是你想做就能做的,是有條件要求的

下面我們就來看看有什麼樣的條件要求。我當時是在華為電信業務軟體部,華為的運維體系分為一、二、三線,我們分別來看。

一線維護

這個團隊是負責產品的交付服務和後續的客戶服務工作。從技能上,很像傳統運維,主要是對網路裝置、硬體主機和作業系統層面要熟練。一方面要負責交付的專案管理;另一方面,也是非常重要的一點,要對一線客戶滿意度負責,也就是客戶反饋的所有問題,甚至是客戶工作中表現出來的喜怒哀樂都要關注。

一線維護,最重要的就是必須要有非常強的服務意識。

二線技術支援

因為一線維護面對的是單個具體的運營商,在遇到一些問題的時候,往往沒有經驗,但是二線因為要面對某個產品全球的局點問題,所以在經驗上更容易沉澱和積累。當某個一線團隊遇到沒有經驗的問題時,二線有可能就可以很快很好地幫忙解決,而不用直接透傳到三線。

同時,二線還要做好統籌協調,因為一線過來的問題不僅僅是產品本身問題,也可能是網路裝置、硬體、作業系統、儲存甚至資料庫等的問題,這就需要二線幫助一線協調專家資源進行處理,而不是一線再一個個找人,這時一線只管反饋問題即可。

二線技術支援,大多由產品研發或者一線維護經驗的人員抽調上來的,即使沒有這些經驗,也要下放到一線去鍛鍊很長時間,兩三年都有可能,所以技術和經驗上都相對更加全面,同時能夠有較強的推進協調能力。

三線研發維優

到了三線就是研發團隊中的運維團隊了,這個團隊在華為叫做維優團隊。這個團隊就很牛了,一般都是從開發骨幹精挑細選出來的,一方面是為了鍛鍊人,另一方面也是為了在出現問題時,能夠有最專業、能力最強的人響應處理,因為電信級業務是國計民生的基礎設施,一般傳遞到三線的問題,都是比較嚴重或者疑難的了,必須投入精兵強將第一時間解決問題。

處理問題的過程中,還會不斷完善工具體系,提升日常維護和問題定位的效率。因為三線同樣要面對全球局點問題,所以7*24響應,而且常年無休,比我們現在網際網路運維的工作負荷要大得多,所以這個團隊成員一般做個1~2年就會轉崗晉升,不然身體肯定是承受不住的。

三線研發維優,這個團隊的成員就像軍隊中的突擊隊或尖刀連一樣,總是衝在最前面,在高壓狀態下,解決最複雜、最棘手的問題,所以從選拔階段,就有非常高的要求。最終經過這個團隊磨練出來的人,技術能力、溝通協作能力以及全面解決問題的能力,都是非常突出的。自然地,在晉升發展方面就會有更大競爭優勢。

上述這樣一個非常嚴密的一、二、三線運維機制和協作體系,各條線各司其職,發揮各自優勢作用,串聯起了客戶、產品和研發整個技術支援體系,基本上就支撐起了華為電信軟體在全球局點的技術支援和服務工作,這一點還是很強大的。

也因為各自都有獨特的價值體現,所以運維崗位上人員的存在感和成就感就會比較強,當然就不會覺得做運維是很低階的事情。同時,因為人員非常優秀,能力突出,這個崗位得到尊重也是必然的,甚至是令人嚮往的。

其實,能夠得到尊重,還有非常重要的一點,就是來自華為對客戶和使用者的尊重,真正的把“客戶第一”融入到了整個公司的組織架構和運作機制中。

這裡我們不做過多發散,理解下來就是誰離客戶最近,誰對客戶負責,誰就能代表客戶,誰就有最大的話語權,甚至是指揮權和決策權。體現在上述我們所說的運維機制上,就是:一線的聲音,代表了客戶聲音;一線反饋到二線的問題,二線必須響應;二線傳遞到三線的問題,三線必須響應

當然,問題級別不同,響應效率可以不同。同時,三線可以根據客戶現場情況,以及問題嚴重程度,對問題進行升級,以知會到更高層級的主管進行關注

在考核上,如果一線提交的問題,最終被定性為二線支援問題,或者三線研發質量問題,那二、三線的全年考核將會受到影響,如果是頻繁出現問題,那就會受到嚴重影響,而且各級主管要承擔連帶責任

這套機制的根本目的,還是為了促進整個體系能夠以儘快解決問題、提升軟體質量為目標。整個團隊樹立起這樣的觀念,就自然會對質量和問題有敬畏感,研發維優那個時候大多都是遠端電話與一、二線溝通,潛意識裡就會把一、二線作為他們的客戶,同樣保持謙卑和尊重。

所以,無論是從對運維的定位上,還是整個公司文化以及運作機制上,都形成了對這個崗位的高度定位和尊重。

說回到我個人,因為當時專案性質的原因(前面提到本質上是一個網際網路形態的專案),是高度定製化的,並不是傳統電信業務的產品形態,所以當時我們無法直接獲得一、二線的支援,所有的運維工作都由研發團隊完全獨立承擔,當時我就是把一、三線的事情都做了,前面很長一段時間是既做開發又做三線維優工作,對我技能上的提升幫助非常大。再往後因為精力有限,在後端維優團隊建立起來之後,我就花更多時間做一線工作,貼近客戶多一些,這裡就對我之前說的職場軟技能的提升有很大幫助。

當時華為的三線研發維優,其實很像Google的SRE崗位,各方面能力要求很高,不僅僅是軟體開發這麼簡單,所以當時讓我去做運維,並且給到我足夠的授權去組建和帶團隊,就相當於讓我去做SRE這樣高階的崗位,我自然會覺得非常自豪。

再往後,在這個專業方向上做精做細,形成差異化的優勢,自然就會有更大的收穫。

給我們的一點啟發

這樣的一個發展過程並不是我刻意設計過的,機會也不是刻意爭取到的,就是平時多做一點,做得認真一點,確保最終能夠拿到結果,而且稍微努力一下,儘量拿到比預期好一些的結果

在這個過程中,隨著個人能力的提升和全面發展,後續各種機會也就隨之而來了。

如果讓我總結就是這麼平淡無奇,如果讓我給出個人發展建議,想要從普通做到優秀的話,就是上面幾句話。

崗位上,可能不會跟我一樣去做運維,但卻一樣可以做到優秀的架構師、技術專家、專案經理或產品經理等等,只要你有心即可。

精選提問

  1. 大部分的程式設計師都侷限於技術開發範圍,對於產品的責任心和認同感並不強,常見的說辭是出於明確的職責劃分,但更多的原因來自於團隊文化的影響。而對於產品的開發,很少有團隊能有合理而明確的職責劃分,大部分都是基於傳統開發領域的認知,對於職責的邊界劃分其實都含糊不清。尤其在小的團隊中,運維的職責可能落到專案管理者或專職的運維人員身上,其他開發人員的參與度不夠,自然就不對線上和客戶有多少的責任感,如果能讓這些人員也參與進來,那麼所有人的能動性應該會有所提升的。

    責任可以有邊界,但是做事不能有邊界,你的我的分太清楚了,有時候事情就沒法做了。
    
  2. 表示身同感受,選擇了就把他做精做細形成差異化,職場越往後軟技能和Owner精神很重要,做事不設邊界對不確定的事情保持樂觀;很認同輪崗或到一線體驗,但很多公司很難有這樣的機會。我們遇到人員驟增導致生產力嚴重下降的問題,往往都為了甩鍋撇清干係,哪怕是一個非核心的小問題也要花費很大的時間精力溝通或公關,反過來受影響的卻是使用者,時間久了就形成了很不好的習慣和文化,沒有大公司的命卻得了大公司的病,趙老師有好的建議嗎?

    團隊氛圍和體制上的問題,只能在氛圍和體制上改進,我也沒有太好的辦法。
    
    不過對你個人來講,可以堅持你認為正確的做事方式,不必去糾結非常細緻的責任問題,這樣你看問題會更全面,對你個人成長還是有好處的。
    
    最後,完成工作的基礎上,一定要關注個人成長。
    
  3. 態度決定高度

  4. 前幾個月我還有過類似的疑惑,那段時間我在公司是兼做開發和運維。做了比較長的時間業務開發,和一小段時間的運維,隱隱約約覺得運維相關的活給自己帶來的挑戰更大。但是和一個主要做運維,偶爾做些許開發的同學溝通,他卻說運維太low 了。

    這裡面我相信有一些原因是各自有各自的舒適區,對於自己比較熟練東西,可能會主觀的認為沒那麼難。但是,客觀的層面,我覺得運維確實有一些工作,會對工程師個人能力的要求更高,同時也會給工程師帶來更快的成長。尤其是一線業務的線上運維工作。

    對於想要成為一個合格的Backend架構師的我來說,運維崗位的鍛鍊是不可或缺的。

    加油,只要你有心!