長江後浪推前浪,前浪呢?

工作多年的程序員在經驗方面有優勢,但新人一上來學到的就是最新的技術,會不會用後發優勢,技術資料都更先進了,沒有歷史負擔,直接用年輕的學習能力學最新的技術,逐漸追平老程序員的經驗優勢呢?

先簡要說結論:

如果這裏的經驗是耦合於特定的語言、工具、框架、系統的低層級技能,那答案是會。

但如果是對問題抽象與建模的能力、結構化思維與系統設計能力、溝通表達能力、對人的coach能力這些高階技能,那答案是永遠不會!

知乎上滿目的 程序員幹不過35歲 這樣的問題,說白了就是大部分人一直在低階技能上不斷的堆砌。

這些年面試遇到的初級的老程序員大抵如此:

做前端的,開發過過N個網站/app,一問到框架細節如事件註冊或雙向綁定的原理就雙手一攤。

做後端的,精通多種編程語言,熟悉各種後端框架,把做過的項目需求稍微變換一下,增加點併發容錯要求就立馬歇菜。

搞ML/DL的各種算法如數家珍,追問兩句業務場景,以及在新場景下怎麼做feature提取和loss function設計就一臉懵逼。

他們的全部所學,在工作的前兩年就基本完備了,之後的經驗不過是換了幾個名詞的簡單重複。

真正有經驗的工程師(我不大喜歡用程序員這個詞,源於在入行時候導師的一句點撥: 要做解決問題的工程師,不要只做寫代碼的程序員),應該是這樣的:

能看透各種新技術的原理和適用場景,必要的時候自己設計基礎庫或框架;

能快速把握一個業務需求的核心與問題邊界,兼顧成本與收益分階段給出解決方案;

能簡單明瞭的向低階同事傳達設計要點,向管理者溝通資源需求;

能指引低階工程師的晉級方向。

這是我對高階工程師的理解,十多年設計進狼廠的技術職稱評定體系,今天依然適用。

你說這樣的經驗,會被新技術拉平嗎?

長江後浪推前浪,前浪,濤聲依舊。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章