網絡上關於工程師職業分析和規劃的文章現在已經汗牛充棟。各路大神對於工程師職業發展和職業危機也提出了很多觀點和看法,例如:
35歲遇到中年危機的都是工作之後沒有堅持學習提高,技能跟不上的,主要堅持終生學習就不會有危機;
為什麼公司更願意招年輕人,因為他們性價比更高,比年紀大的更能加班;我們公司有不少四五十的老員工還在寫代碼,所以我們這行不用擔心中年危機;
現在畢業的年輕人比以前都牛逼,很多出來工資都能倒掛老人,培養幾年就能替換那些重複技能用了10年的老人;
有些人10年經驗只不過是1年的經驗重複用了10年;
社會都是看能力說話,只要你能力強,出去到哪裡都能找到工作;
不要學那些應用層變化快的技能,要學一些內核這種底層變化慢的技能,這樣年齡大了越老越吃香不怕被淘汰。
………………
各種觀點滿天飛,讓人眼花繚亂,有一些是客觀實事求是的,還有一些是部分靠譜的,更有一些是張口就來,主觀主義的。很多童鞋完後這些零零散散的觀點之後,頭腦還是一片混亂,沒有一個系統性的分析框架來從自身實際情況出發,來分析自己的具體問題。
火哥最近從企業管理相關的專業理論中,學到一個五力圖模型用來分析企業競爭力的。聯想到在職場中個人求職者的處境和企業在市場經濟中的處境有諸多類似之處,於是移植過來修改修改,作為工程師職業競爭力的系統分析框架,藉助它山之石,攻克職場之玉。
什麼是五力圖模型五力圖模型即五力模型,是麥可·波特(Michael Porter)於20世紀80年代初提出,可以有效地分析客戶的競爭環境,對企業戰略制定產生全球性的深遠影響。麥可·波特認為行業中存在著決定競爭規模和程度的五種力量,這五種力量綜合起來影響著產業的吸引力以及現有企業的競爭戰略決策。
五力分別是指:供應商議價能力,購買者議價能力,潛在競爭者進入的能力,替代品的替代能力,現有競爭者的競爭力。
相比於網上那些零零散散的觀點,五力圖模型可謂是一種系統性的的分析框架和方法,考慮問題的點也更全面,邏輯相關性更強。
用五力圖模型來分析工程師的職場競爭力為什麼可以把分析企業競爭力的五力圖模型移植到個人的職場分析呢?因為人本身有多重屬性和價值標準,作為家庭人的屬性,我們評價他的價值是根據他是不是一個好父親,好丈夫,是否孝順長輩;作為學校人的屬性,我們評價學生根據他是不是遵守紀律,各科成績是否優異;作為社交人的屬性,我們評價朋友根據他是否志同道合,誠實守信;而作為職場人屬性,評價的標準就是看他能否在特定的時間和場所給他的客戶(老闆,上司也是廣義的客戶)提供對方需要的,有競爭力的產品和服務。從職場人的屬性來看,職場人和企業存在的內在邏輯在一致的,對於企業來說,不管你是行業巨頭還是創業新貴,不管你的企業文化多好,你存在的價值就是給客戶提供對方需要的有競爭力的產品和服務,一旦你無法滿足這個標準,不管其他方面如何再好,你也沒有市場存在的價值。
而火哥所用的五力圖模型,就是在職場人屬性為客戶提供需求服務的標準上,對一些要點進行概述和分析,總結出一套框架和分析方法。
如果把用於企業競爭力分析的五力圖模型,移植到工程師的職場競爭力分析,又要做哪些改動呢?以下是火哥修改過的工程師的職場競爭力五力圖模型。
技能,證書的獲取難度
這個標準其實是評價你的職業供給側的門檻高不高。如果你的職業學歷不限,或者只需要大專以上學歷,會操作office就行,會英語,顯然這些技能就是很容易獲得,對現在的普通的大學生來說都不是啥問題,夠不上啥門檻。
對於嵌入式,電子通信等專業相關的崗位,掌握電子電路分析,單片機,C/C++編程,Linux系統的使用和環境編程,常用的I2C, SPI等驅動軟體開發等技能,有一定專業性門檻,不過由於這些技能都是能夠通過開源或者一般的培訓渠道獲得,基本上屬於靠個人努力和砸時間就能獲得的技能,也就算不上高門檻。
但是,如果你掌握Linux內核網絡協議棧,文件,存儲系統設計,攝像頭ISP Tunning, GPU高性能計算等特殊硬核技能,並且該技能無法從一般的技術書籍和培訓渠道獲得的時候,該技能就變成了高門檻技能。一旦該技能有足夠的市場需求,你的職業議價權也變高了,往往也可以擺脫年齡和學歷的限制。
另外,稀缺的學歷和專業的證書也是屬於職業供給側的門檻。為什麼企業給985,211的畢業生(不管應屆往屆)的待遇總比普通學校高一些,學歷證書本身就是一個人大腦質量可靠性的認證證書;為什麼其它一些職業,靠著註冊會計師CPA證書,註冊建築、結構、巖土工程師,行醫執照等一些證書就能躺著拿錢,而不是所謂的「能力,表現,業績」。這正是因為這些稀缺的證書門檻給了求職者一定的議價權。思考一下IT領域有哪些認證有關的門檻呢?(比如思科,華為認證,杜比音效認證的項目經驗,WIFI/藍牙最新標準認證項目經驗等等)
綜上所述,工程師職業競爭力其第一部分由他技能和證書的獲取難度門檻來決定供給側的議價權。
僱主的議價能力
分析完供給側,再看看需求側。有些工程師空有一身屠龍之技,結果來到市面上無龍可屠,只能一聲嘆息。哪怕一個工程師掌握再牛逼的技能,也要有足夠的僱主需求才有把技能變成工資的可能。決定職業發展和薪資的,不僅僅是你自己技能牛逼,也要考僱主的需求啊。
典型的例子是通信設備行業,從以前的全球五大通信設備商到當今菊花廠一家獨大。那麼菊花廠在通信工程師的薪資上就有非常強大的議價權。一個通信工程師如果在菊花廠與領導產生衝突與矛盾,想換個地方開始新的職業生涯之際,環顧四周,發現曾經的競爭對手都被幹趴下了,都給不起當前菊花廠的工資,也是一種無奈。
反觀AI深度學習領域,由於是新興崗位,有相關技能的工程師非常稀缺,加上做AI深度學習的公司目前很多,不存在菊花廠一家獨大的情況,所以就很容易通過跳槽實現大幅度升職加薪,而通信技術本身門檻並不比AI深度學習低,但是由於能跳的公司有限,只能望洋興嘆。
所以電子通信相關領域的工程師或者在校生在選擇職業發展的方向時候,一定要有開闊的視野,不要覺得你當前所做的方向去菊花廠能拿到不錯的薪資,就覺得前途一片光明,要環顧四周看看有沒有其它3家以上能給出你這個崗位和菊花廠同等以上待遇的公司。如果沒有,則要謹慎考慮。
工作崗位和內容本身的變化
之前很多職場人描述1年經驗重複用10年,沒有堅持學習,35歲遭遇中年危機的現象。其現象背後的邏輯在於,很多工作崗位可能在10年後需求極少甚至不存在了,或者同樣的崗位名,它所需求的技能發生了變化。如果相應崗位的工程師沒有及時學習一些新的知識適應外界的變化,那麼重新求職的時候容易遇到危機。
比如說十幾年前諾基亞如日中天的時候,塞班系統軟體開發工程師也非常吃香,現在這個崗位基本快絕跡了。
其它比如做手機系統軟體開發,以前山寨機時代,由於硬體各種各樣,加上Linux內核ARM架構還沒有使用dts配置驅動, 底層驅動需要做很多工作,在驅動層要堆很多垃圾代碼(Linus Torvalds原話),因而需要大量的專門做底層驅動開發的工程師,應用開發和驅動開發涇渭分明。可是隨著Android和Linux內核版本的升級,dts, HIDL等功能的推出,原廠手機方案不斷成熟化,手機硬體同質化等等因素。底層驅動開發所需要做的工作越來越少。雖然有些工程師炫耀說驅動工程師沒有做應用的累,每天修復幾個問題,劃划水就過去了,不用怎麼加班。但是這些划水的行為被越來越多精明的資本家發現之後,資本家就增加了驅動工程師的工作量,提高了招聘門檻,要求驅動工程師也要參與應用層中間件,Framework等相關開發,做到垂直打通。並且招人要求不只是會C語言和驅動就行了,C++編程(主要是Android HAL層),熟悉內核與framework等技能也提上要求。10年前那種只會C語言和驅動開發的工程師,現在已經很難再找到知名大公司Android底層系統開發的工作了。
另外曾經熱門的Android java APP開發,由於原生APP需求減少,統一平臺flutter開發與前端技能被提上了工程師的技能需求表,Android APP開發在很多大廠也被併入了大前端開發,要求不只是Android java app, 而是掌握整個移動大前端的技能。
所以面對工作崗位的消亡和具體內容的變化,體制外的工程師不得不保持警惕,每隔一段時間給自己充電來適應新的變化。
相同水平工程師的競爭
你的工資水平和職業發展真的只取決於你自己的強不強嗎?如果你還這樣想,就有點naive了。其實有學過一些經濟學入門知識的童鞋,應該都能理解這一段火哥要描述什麼。
除非你在行業內做到院士這樣的絕頂位置,掌握大量的行業話語權和資源審批權。否則作為一個工程師,哪怕你技術水平再高,也會遇到水平接近的其它工程師的競爭。而資本家最喜歡玩的就是市場競爭和性價比這套規則,就像你買東西一樣,招人也喜歡招性價比最高的,不管你給資本家創造多少價值,立下多少功勞,資本家的工資給到略高於同水平的市場平均價就可以了,這樣就可以保障你不會輕易離職,哪怕你離職,他也能儘快招到替代品。這樣才能保證資本家(或者股東)權益最大化。不信可以去看看各個上市公司的招股書,第一頁都會寫著保證股東權益最大化,而不是保證勞動者權益最大化。
很多行業和崗位,比如電子/PCB硬體工程師, 機械工程師,明明培養一個合格的工程師挺不容易的,掌握的技能也不少,為什麼整體薪資都不高,經驗豐富的也就1-2萬的月薪,和BATH招的應屆生差不多。實際上這就是相關行業和崗位,工程師之間的內部競爭太過激烈,被資本家壓價的緣故。因為這些崗位存在的時間比較長了,社會上積累了大量經驗豐富的老人,很多老工程師由於買房較早,房貸壓力不大,沒有現在20多歲年輕人那麼大的買房租房壓力(可能人家的月供還沒一些年輕人的房租多),因為在追求高薪上也就沒有那麼強烈的動力,為了保證工作崗位,願意接受稍微低一些的薪資,加上這些人工作中的輸出能力還算比較強,對資本家而言,性價比較高。但是激烈的競爭和價格戰(經濟學名詞叫「內捲化」)使得該行業和崗位整體平均薪資很難抬升。
所以對於年輕人來說,做職業選擇的時候,儘量遠離這些內捲化嚴重的行業和崗位,在一個稍微寬鬆的競爭環境中,才有很大的成長空間。
應屆生或零經驗轉行者的威脅
沒有經驗的應屆生培訓幾個月或者一年之後,是否就能勝任當前你的崗位呢?很多有經驗的工程師對沒有經驗的應屆生嗤之以鼻,覺得自己的經驗牛逼,解決過很多複雜問題,不是那些應屆生隨便替代的。但是這些資深工程師看待應屆生的態度真的是客觀的嗎?真的沒有高估自己,低估別人嗎?其實通過火哥對人性的洞察,發現主觀地高估自己,低估別人,寬於律己,嚴於律人的情況其實更多,有技術的工程師很多也克服不了人性的弱點。
要知道資本家和一般工程師,評價一個新人的角度和標準是有差別的。資本家一般只看這個新人的工作產出是否滿足了它的需求(包括校招減稅政策也是滿足資本家降低成本的需求)。而一般的工程師卻喜歡使用放大鏡來盯著新人工作過程中的缺點和錯誤。很多時候新人因為經驗不足產生的誤操作,耽誤了一些時間,比如串口線沒有交叉,示波器用錯了,元器件虛焊了等等,其實這些小問題只要不對最後結果產生致命性影響,那麼在資本家眼裡就不是啥大問題,可是在很多工程師眼裡就變成了這個應屆生能力不如自己的鐵證。要是還知道新人工資不比自己低多少,這些老工程師心理會更加不爽。
然而在IT軟體相關的新興領域,新人工資和老人差不多,甚至倒掛老人的現象屢見不鮮。從資本家的角度來看,這些新人培養起來實際產出應該不會比這些老人低多少,經驗不夠,加班來湊,哪怕碰到難題沒有老人解決地那麼利索,但是很多時候加加班也是可以解決的。
從工程師的角度看。有些老工程師容易高估自己工作經驗的價值,很多人工作10年,解決了無數問題。可是10年以上經驗的人,跳槽換崗是很常見的事情吧,你這10年解決的問題的經驗,真正適用於當下這份工作的有價值的經驗又有多少呢?難道你8年前解決的一個單片機外圍硬體電路設計bug的經驗,對現在從事應用層中間件開發的你還有很大價值?所以火哥認為,大部分工程師的有效經驗基本上只有近三年的才有價值,時間太長的經驗對當前崗位的用處可能真的不大。
其次,由於現在網絡信息比以前更加發達,應屆生的學習渠道和信息來源更加多樣化,同時學習過程中走的彎路也更少。15年前你讀書的時候買一塊單片機開發板可能都是稀罕物,現在已經是淘寶上爛大街的東西。10年前你在學校還在學習譚浩強的C語言編程,琢磨這個結構體指針怎麼這麼複雜,而現在的學生在學校已經能接觸muduo這種產品級的開源異步網絡通信庫了。所以在IT軟體相關領域,由於快速的迭代和開源潮流,使得在校學生有更明顯的後發優勢,通過網絡最新的信息獲取,可以節約時間不去學你所掌握的一些淘汰的知識和經驗,不去踩你踩過的那些現在用不上或者不會再出現的坑。這樣應屆生和你的差距或許真的沒有你主觀認為的那樣大。
所以具體分析你所在的領域和崗位,如何選擇那些新人無法輕易進入的領域和崗位,也是很值得思考的問題。