在中國程序員能不能干一輩子?
已經超過35歲的C++,它的創造者現在在做什么?
最近,69歲的Bjarne Stroustrup老爺子又出現在了公眾面前:沒有退休,擔任摩根士丹利的Technical Fellow,并且仍在積極參與C++的開發。相比于國外的大齡、高齡程序員,35歲程序員“天花板”,已經成為一個廣為流傳的梗。程序員在內的互聯網工作者過年回家,恐怕也沒少被質疑這一行就是碗青春飯。但事實真的是如此嗎?在中國,程序員到底能不能干一輩子?“我肯定干不了一輩子”在“中國程序員能不能干一輩子”的知乎話題下,很多人直接了當地給出答案:不能。原因很簡單:程序員面對的是一份高強度的工作,同時面臨著技術的快速迭代,對于身體素質、學習能力都有著很高的要求。入行即焦慮,似乎已經成為一個普遍現象。在兩位與剛入職不久的程序員的交流中,就能明顯地感覺到這一點。谷同學今年27歲,碩士畢業于北京郵電大學計算機專業。畢業當年,他在幾份大廠的offer中選擇了騰訊,從事算法研發工作。但伴隨著這個令人羨慕的職業開場,焦慮感變成了生活中揮之不去的夢魘。他對量子位說,這種情緒來自于兩個方面。一是同事們的工作能力都十分出色,讓人不由得有種優勝劣汰的緊張感。二是工作強度真的很大,“晚上12點的北京,都見怪不怪了”。好不容易到了周末有點個人時間了,他也不敢放松——這會兒不看技術貼、論文,就沒時間去跟上技術更新的節奏了。每天的工作都被生活裹挾,回家就想躺在床上睡覺。谷同學這樣自嘲,他也坦言,自己如今幾乎沒有什么社交。“我肯定干不了一輩子,太累了,精神壓力也太大了。”不過,談到轉行,谷同學并沒有什么具體的想法。在他周圍,也暫時沒有可借鑒的前例——身邊35歲的程序員其實不少,主要都是leader級別,他們目前也并沒有要轉行的意思。“先升上組長再說吧。”“沒聽說有人轉行”
關于轉行這件事,入行接近10年的朱老師也說,“沒聽說過”。昔日一起寫碼的同事,有人去了阿里,有人去了字節,有人當上了Tech Leader,有人還在一線開發。但總之,這群已經35歲或快35歲的程序員,“貌似沒有被優化的跡象”。在朱老師看來,團隊里經驗豐富的老程序員其實對開發效率影響很大,“新人搞不定的bug,老程序員可能看兩眼就知道問題在哪兒了”。因此在負責團隊招聘時,朱老師本人并不覺得年齡是一個需要重點考慮的指標,技術水平能不能達到團隊的要求才是重點。唯一會讓朱老師感覺到年齡焦慮的,是“學不動”的問題:是會有擔心,自己的技術能力突然就落后了。不過,碼代碼的快樂會沖淡這種憂慮——作為一個主業是DevOps的程序員,朱老師最大的業余愛好是游戲開發和折騰服務器。談到自己的未來,已經邁過30歲門檻的朱老師說:未來3-5年應該是不會失業的。如果時間拉長到10年20年,我比較擔心被AI取代了。“可以作為終身職業,但需要轉型”
但必須承認的是,當前許多互聯網公司的技術團隊,平均年齡都很年輕。根據獵聘網數據,2019年1月-9月,全國互聯網行業程序員基礎畫像顯示,在年齡分布上,25-30歲的程序員占比達到52.96%;35歲以上程序員僅占6.65%。工作年限分布上,工作經驗在3-5年的程序員占到28.18%,5-8年占26.86%。工作年限在10年以上的程序員僅占11.7%。大周是一家互聯網信息服務公司的程序員,27歲,如今已成為項目組的Team Leader。作為一個把程序員視作終身職業的從業者,他的危機感表現得更強烈一些。在他看來,程序員作為終身職業本身是沒問題的,不過,將單純的一線開發作為長遠的職業規劃方向,恐怕并不合適。和朱老師一樣,他認為“大齡”不是關鍵,關鍵是技術視野、框架理念能不能與年齡相匹配。隨著執業年齡增長,遇到的業務場景隨之增加,了解的框架也會有所擴展,對各組件的理解都會隨著實踐加深,這樣的經驗是年齡小的開發人員所不具備的。因此經驗豐富的程序員其實更適合把握方向性的決斷。但是一線開發工作要求程序員思維敏捷,對技術更新/迭代敏感,同時精力充沛以便快速處理多種突發問題。必須承認,隨著年齡增長,人的思維敏銳性、學習能力都會有所下降,導致知識庫不可避免地固化。這對一線開發來說是致命的。單純靠技術在業界立足的大佬,當然也不是沒有,但在大周看來,那只是金字塔尖上的少數人才能做到的。想要把程序員當作終身職業,更普適性的方法就是轉型。因此,大周對自己的規劃是,在從事開發工作的前期盡量積累實踐經驗,加深對各項技術的理解,總結團隊項目在開發/迭代過程中出現的各種問題,積累對業務足夠的理解認知,讓自己在未來既具備足夠的技術基礎解決一線開發問題,同時也有足夠的經驗處理團隊問題。而這樣的想法也并非大周一人獨有。周圍的一線開發人員均有帶領團隊的渴望與需求。“談論這個話題為時尚早”
谷同學、朱老師、大周等人的觀點,其實也是社交媒體上圍繞這一問題的幾種聲音的代表。但相比于行業中普遍存在的焦慮,也不少網友認為,談論這個問題為時尚早。知乎網友鄭天璣就指出,對于一個大部分90后還沒有30歲,一個互聯網基礎設施的搭建主力還是80后的時代而言,談能不能干一輩子,真是太早了。嚴格意義上講,80后90后還處在技術的積累期,這一代人甚至還沒有到集體厚積薄發,大量同齡人開始創造發明當下主力開發語言、開發框架的階段。也有網友直接搬出了小學課本上的文章《小馬過河》:小馬不知道河水的深淺,不敢過去。老牛說:“水很淺,剛沒小腿,能飚過去”。而小松鼠說:“深得很哩!昨天,我的一個伙伴就是掉在這條河里淹死的!”。小馬自己過河試試才知道,原來河水既不像老牛說的那樣淺,也不像松鼠說的那樣深。哪些公司對大齡程序員更友好?
35歲真的是程序員的“天花板”嗎?程序員能干一輩子嗎?無論這樣的問題有沒有確切的答案,作為一個風頭正盛的行業里那個不確定的“x”,程序員們都無法阻止它們在生活中被提起。阿里巴巴CEO張勇同樣被阿里的同學問過這個問題:過了35歲,還能不能專心寫代碼?據《人物》報道,張勇的回答是:對于35歲以后立志寫代碼的同學,我120%鼓勵、支持、欣賞、敬佩,為你們創造條件。另外,在接受量子位采訪時,AI獨角獸曠視聯合創始人、CTO唐文斌也曾對此表示:要尊重行業經驗。而在當下這個時間節點,隨著互聯網行業發展的不斷深化,或許也是時候從文化、機制上去探討資深程序員們的職業發展之路了。