運維不迷茫:給1到10年運維人的“修仙”指南
今天跟大家分享一下運維人的職業生涯發展和相應的軟硬技能提升,主要分為兩個部分:第一是運維工程師成長的煩惱;第二是怎么走好自己的運維之路。
運維工程師成長的煩惱
在第一部分里,根據自己長時間的工作經驗,我把運維工程師按照工齡做了一些年限上的劃分,比如任職三年、五年、八年……處于不同階段,運維人也呈現出相當不同的狀態。
1-3 年:有技術的逗逼
隨性工程師
在工作時間內,一般是比較隨性的工程師,做一天和尚撞一天鐘,我也親身經歷過此階段。
這時候還沒有什么責任心,不會有過多的想法,只負責去執行,而不做過多的思考。
與工作時間內的“被動思維”呼應的是,下班之后夜生活比較豐富,撩妹、抖音、打游戲等。
做技術容易“管中窺豹”
什么概念呢?一到三年的運維人大部分靠度娘,例如 Nginx 配置最大連接數只知道上網獲取 65535 相關的配置,但是配置背后的原因和原理,他們不知道也不甚關心。至于一些文章里的配圖,更不會做深入研究。
工作態度積極,沖勁足
我曾接帶過一個實習運維工程師:3 月份入職,9 月份離職。初來乍到特別散漫,做事只應付我們的基本期待。
后來接受了一些思想指導,小伙子工作突然很有沖勁;他所做的事情,包括日報、周報內容的撰寫,表現得判若兩人。
2015 年 4 月份的 22 個工作日,他加班 22 天,天天至凌晨兩三點。期間技能也得到了極大提升:比如讓他測試集群的性能,積極去做之外,也會認真思考為什么去做這件事情;對新技術進行研究,思考怎么樣把它快速地掌握。
事務型人才
最后,我把各個行業的小朋友都稱為事務型人才,顧名思義,只需要把事情做好,達到公司的業務目的即可。
“顧頭不顧尾”也是一種常態,我指導過一名 90 后的運維工程師,他做代碼發布,只管發上去,無視后期事態,比如是否發布成功、業務是否可以訪問等。
3-5 年專業資深人士
技術提升
技術的確得到一定的提升,這是生存規律。初入公司,一張白紙,為了掌握了解公司的業務,你會去學習,否則就只能被淘汰。
“跳槽”慣性
技術提高以后,會陷入“跳槽”慣性。上面提到的 2015 年 3 月份到我這邊的運維工程師,剛入職時轉正 5K,9 月份離職去大麥網以后薪資一下到 13K,的確這時候跳槽提升得很快。
但是容易迷茫,如果頻繁跳槽,發現好像跳到這家公司和那家去差不多,到底應該怎樣去做,就不明晰了。
這時候,我們運維的技術方向就發生變化了,基礎架構運維和開發型運維開始分化,其中 DevOps 會更多一些,一些運維工程師會產生迷茫,到底是去做什么。
我所認識的一些人做到五年左右,基礎架構運維的事情還沒有非常深入的時候,就去做了 DevOps,發現原有的開源組件并不能用得很好,給公司以及個人的發展帶來了一定的風險。
技術能力與高薪預期的“錯位”
技術能力提升減緩與高薪預期的“錯位”,這一階段的中級運維或高級運維都容易自傲。
我面試的運維人有跟我同齡的,還有比我大的,他們中有些人技術知識還停留在五年前,卻因為自己從事這方面有一定時間了,產生高薪的期望。這就造成錯位,高薪期待和實際能力不匹配。
事務型和思考型人才
3-5 年運維人屬于事務型和思考型人才,身為中級或再高一級的運維工程師,大部分人還是處于被領導的狀態。
有經驗和學習能力加持,他們會思考什么是該掌握的東西,不過思考的強度往往還不夠。
缺乏總結跟復盤
最后,缺乏總結跟復盤。我相信運維人面對新的技術,或者做一些測試的時候,都會做筆記。
那為什么還缺乏總結?很多時候筆記就只是一本筆記,并沒有回翻筆記來復習,更不會及時更新筆記內容和分類。
5-8 年:運維經理,至少運維主管
5-8 年的運維人基本上是運維經理,至少是運維主管。但是,很多運維工程師是憑著技術能力和工作年限成為運維經理的,這中間要面對一個從技術到管理的跳躍,所以存在較多問題等待適應和解決。
找不到自己的定位
升任到運維經理后,很多事情還是自己承擔,導致團隊里的其他兄弟分擔任務很少,進步很慢,長遠來看也不利于整個團隊的發展。
團隊意識薄弱
不會帶團隊,不懂得利用團隊的力量來滿足公司的業務需要,還是做原來的角色。
對管理角色的認知出現偏差
身份轉變來得突然,面對新角色不適應,比如開始擺架子,趾高氣昂,指使別人做這個做那個。
另外,不習慣處理管理類事務,比如某一公司的業務在機房的哥們先是運維工程師,被提到了 IT 主管。
每天都要做報表,他會覺得太煩了,寧可不做,想回去繼續做一個運維工程師。
思考與事務占比相對來說會更均衡
做了運維經理以后,你更多的時候要思考的是怎么讓自己的運維更加有效率,怎么讓公司形成這種標準化、規范化的運維體系以及運維技術體系。
所以這時候,作為一個領導者,可能既要處理團隊里疑難的技術問題,同時還要去規范運維體系。
運維技術容易達到瓶頸期
公司里面處理線上事務特別多的時候,對于一個運維經理來講,時間、精力用來補足管理,很少能進行技術知識的更新,所以技術知識往往就會停留在那個階段。
但是在做技術的圈子里有個特別好玩的現象,底下的普通員工如果要服你,就要看你的技術能力是否夠強。技術能力不強,即使你的管理能力很強,下面的兄弟也不認你。
我遇上好多這樣的情況。有一位運維工程師朋友認為自己經理的技術能力不強,瞎指揮。
但縱然這位經理技不如人,他可以把一些任務安排有時間節點地完成,而且保證一定的質量,這就是懂得管理。
而我認識的這個朋友,雖然他也做了八九年了,卻始終是一個普通的基層技術人員,做不上管理崗。
8-10 年:運維總監/運維架構師
8-10 年的運維人,已達運維總監/運維架構師層次。這時候技術經驗和管理經驗都已經非常豐富,加上做了運維總監或運維架構師,他們都有比較好的職業習慣。
知識陳舊
因為他們不再做一線的運維了,問題交給團隊的人處理,自己只會給一個思路。
比如說:不管做 DBA 還是做運維的,他們對聽過的名詞都熟得不能再熟,但就是做不到毫秒級的故障切換。
不久有人來問我,你們是怎么能做到毫秒級故障切換的?我回答說我們對于技術的領域是一直更新的,Failover 用的最多的還是 Keepalived,Keepalived 官方已經給了答案。
另外做技術是我的興趣,做管理是我的工作。
學習能力下降
能做到運維總監或運維架構師,年齡絕對不會特別小,一般都在 33 到 35 歲之間。
這時候,家庭、團隊、公司都有很多事情會分散精力,相比而言學習能力會有所下降。
我在沒有孩子之前,一周至少有三個晚上可以騰出來三個小時學習。現在,常常被兩個孩子纏著玩,等他們睡著以后發現剩下的一個小時或半個小時壓根兒就不夠,加上早起,精神上會很累。
新事務接受能力下降
比如做數據倉庫和區塊鏈這些比較火的技術,沒法讓一幫三十幾歲的人去搞技術攻關,攻不了,精力也不夠。
不懂的東西會越來越多
現在的新技術非常多,如果你不保持更新自己的知識體系,就會發現跟不上行業的發展節奏。
對于事情目的、目標不明確
很多人對于運維這件事只管做,但為什么做、到底要做成什么樣子的,并不在乎。
比如做故障切換的時候,我們是要求十毫秒必須發現問題,兩毫秒以內故障切換。
但很多公司并沒有這個要求,只要出了故障切過去就行,至于你的業務中斷多少時間可能都不會去思考。
以上是我根據實際工作經驗,對不同階段運維工程師的特征做的一些總結。我還是希望更多的運維工程師可以走好自己的職業生涯,因此有了下面的一些建議。
怎么走好自己的運維之路
先分享一下我最近面試新人時的一些經驗。我面試時不會問過多問題,我就問應聘者:你會不會安裝操作系統?
這個問題看似簡單,其實不那么容易回答。應聘者沒有一個人說得上來,為什么我的操作系統安裝到服務器上,服務器可以正常運行,也沒有一個人說得上來。
我又問,你能在任何一個服務器上安裝操作系統嗎?他們回答是“能”。這就是不善于去深入挖掘,是比較膚淺的。
再比如做配置的時候,很多人會選擇輸入網上的資料,我們操作系統里面配置 /etc/security/limits.conf 時,有人會將 nofile 配置為 65535。
我問他們,你為什么不配一個 65536 呢?他說不允許。我就笑了,說明很多人不會仔細地深究這個 65535 到底能配還是不能配,能不能比這個大,大多少倍,這些都沒有人去思考。
所以,面試結束我都會告訴他們說,能夠深入,你才會有價值。
對于剛入職場的人而言,五年以內的發展多憑借硬實力;而五年之后,運維軟實力才決定他能走多遠。
打磨硬實力
官方文檔
紅帽招人面試時會問一個問題,當運維的環境出現故障,你首先從哪里查找資料解決問題?
如果回答,我先從紅帽的官方文檔上找,然后再去處理思路,你已經把一只腳踏入紅帽了。
如果說你先通過谷歌搜索,還能繼續往下聊一會兒,但如果你說先通過百度搜索,下面就已經不用再進行了。這些都是紅帽相關負責人告訴我的。
及時跟上時下比較火的技術
現在很多人學運維,只把技術停留在落后的架構上,然后根據百度上查找到的資料使用起來,而且沒辦法做到更深入的使用。對于優化也僅僅停留在稍微修改就可以的程度,不會做更深入的研究。
多關注技術公眾號
我關注了二十多個技術類的公眾號,不為別的,就是為了能及時了解新技術,提升自己的見識。
給自己投資技術類書籍
我有一個觀點,給自己家庭買東西的時候,要舍得花錢;給自己手底下兄弟謀福利的時候,眼睛眨都不要眨;給自己的大腦做投資的時候,也是如此。
看書就是一項對自己有益的投資,以下是我看過后覺得不錯的書,推薦給大家:
-
《億級流量網站架構核心技術》
-
《Linux 性能優化》
-
《Linux 防火墻第四版》
-
《海量運維運營規劃之道》
-
《精通 Nginx 第二版》
-
《MySQL 運維內參》
-
《高性能 MySQL 第三版》
實驗
因為技術對我而言是一種興趣愛好,雖然精力上分不開那么多,但每當出來一些新軟件或新版本,我都會去摸一摸,看看根據自己以前的技術知識能不能把它運作起來,同時摸索是否有更好的新用法。
提升軟實力
我現在對部門所有運維工程師的軟實力提升,要求非常高,比硬實力要高得多。
溝通能力
面試溝通:我面試的時候,發現有些人溝通能力太差,坐了一會兒就開始緊張,緊張得手都不知道該往哪放了。
雖然我已經盡可能地讓他在輕松的環境里面試,以最輕松的話題談起再逐漸進入主題,但他還是緊張得不知所措。
不過,溝通能力不代表口若懸河,應該具備一些關鍵要素,交流時講清楚做了什么事、為什么做這個事、有多少種方法去做,這才是溝通能力。
上下級溝通:做管理的時候會發現,領導者最希望聽到下屬的反饋。當我向下安排任務時,我希望他們過一會兒來找我,了解做這件事的目的、怎么規避風險、有沒有其他應急預案等。
如果不溝通的話,上下級很容易會產生這樣的問題:比如說我安排的配置要求很高,但他們并不知道我所希望達到的程度,自以為已經配置得很好了,到了交付成果的時候才發現效果不夠好。如此反復,領導者只能不時盯緊手下人的任務進程。
我們建立呼叫中心的時候,招來了一個管人力資源的人,他入職第一周下午下班后給我和公司所有高管發了周報,匯報項目的完成進度、完成結果、由誰負責、為何延期等,寫得非常詳細。當時所有人的反應都是,這個人一定要好好留著。
所以說,通過寫周報,就體現了他的價值。推薦看看《不懂匯報工作,還敢拼職場》這本書。
時間管理能力(碎片時間)
大家在不加班的情況下,下班后手機一般都是用來干什么的呢?我的習慣是如果坐地鐵,會利用這個時間看看文檔、PDF 等。
非常值得一提的是去年給我們公司做培訓的一位講師,他的碎片時間管理極為優秀。
比如在峰會的現場,會有 10 分鐘的短歇時間,他可以在這 10 分鐘里寫一份 PPT 為明天的演講做準備。
但一般人都會在做完今天這場分享之后再去做下一場的 PPT。所以說,懂得利用碎片時間是很重要的。
方法論
作為技術人員經常會用到的方法論是什么?
-
SWOT
-
6W2H
-
PDCA
-
魚骨圖:人、機、法、料、環
-
任務分解法
-
SMART 原則:具體、可衡量、可實現、時效性、相關性
-
思維導圖
SWOT 原則可用于分析你自己的優勢和劣勢。當你去新的一家公司工作,挑戰、機遇各是什么?所以我面試的時候常會問兩個問題,你認識你自己嗎?
有些人想過,有些人沒想過,我會再細化,你自己的優勢是什么?劣勢是什么?
PDCA 原則其實就是幫助我們在做事情前做好計劃,做完了再去檢查,檢查之后發現有沒有改進,或者有偏差的地方通過糾偏,通過不斷的 PDCA 原則越做越好。
很多時候,如果想做好,PDCA 原則是一定要有的。推薦看看《管理管到位就這幾招》這本書。
魚骨圖、任務分解法、思維導圖,這三個是我做任何事情都會用到。如果用魚骨圖做不成功,反過頭來,把做不成功的原因定位,做好方案,再根據思維導圖做這個任務。
你的執行計劃是什么,執行計劃做出來,接著做任務分解:什么時間,做什么事情,你需要什么配合。
工具
以下這些工具也是技術人員經常需要用到的:
-
Xmind:用于做思維導圖。
-
JIRA:通過 JIRA 管理項目,根據項目的進度來評估團隊每個人每周工作是否飽和。如果誰這周空著,我就讓他做學習、提升或優化。
-
Confluence:在這個系統里做文檔管理。
項目管理能力以及事件回顧、復盤能力
最后,項目管理能力以及事件回顧、復盤能力也同樣是需要提升的軟實力,推薦看看《復盤:對過去的事情做思維演練》這本書。
作者:李強
編輯:陶家龍、孫淑娟
出處:轉載自「dbaplus社群」微信公眾號,本文根據李強老師在〖2018 DAMS中國數據資產管理峰會〗現場演講內容整理而成。
李強,10 年以上運維及管理經驗,先后在 AdMaster、餓了么擔任運維經理;現任天天拍車運維總監,主要負責天天拍車運維架構的管理、持續優化以及運維團隊的建設、培養。擅長互聯網運維體系、運維技術體系的建立以及高并發互聯網基礎架構的設計及優化。同時作為國內最早一批思科網絡模擬器的推廣者、虛擬化先鋒論壇的創始人,一直致力于網絡模擬器使用的推廣,為國內培養網絡工程師盡一份力。