1. 程式人生 > >技術變化那麼快,程式設計師如何做到不被淘汰?

技術變化那麼快,程式設計師如何做到不被淘汰?

寫了這麼多年的程式碼,你是否曾經有過這樣的迷茫和困惑——技術發展日新月異,奮力追趕的我們,究竟是技術的主人還是技術的奴隸?

程式設計師是吃青春飯的嗎?還是自身的能力達不到年齡的要求?

近期,我與團隊同學探討了職業發展規劃的問題。有些同學表示希望後續能進一步在技術領域(或管理方向)有進一步的積累;有的同學表示希望在新的一年能具有更好的技術影響力,自己能做一些技術決定,去影響其他人,這樣自己會很有成就感。

因此,我也問了一些問題:

l 你希望技術能進一步積累,那你積累的方向和期望達到的結果分別是啥?

l 你希望能有技術決策,希望有影響力,你覺得應該如何做到?

l 是希望通過崗位任命的方式嗎?

l 你覺得是否成功的標誌,就是今年或明年得到晉升嗎?

l 等等

大部分同學在面對這些問題時,其實是比較迷茫的,也缺少真正可度量的衡量標準。是否能在短期內獲得晉升成了大部分人作為“組織是否認可、自己是否認可”的衡量標準了。 當然,這個話題仁者見仁、智者見智,這裡我簡單地談談我的看法。我以相對比較口水化的方式,將職業發展分兩個階段來進行闡述:

1)第一階段:大學畢業3到5年

2)第二階段:大學畢業5到10年

第一階段:大學畢業3到5年

對於從事Java軟體開發的技術同學,在畢業後的3到5年內主要都是以學習、積累為主。這個階段的工作幾乎每天都有驚喜,都有收穫。從一開始啥都不懂的校園“新鮮人”向“職業人”轉變。在這個階段,你會學習:

首先,你需要有深度的Java基礎知識:你會開始看《Java程式設計思想》、《Effective Java》。這兩本書絕非普通的基礎,而是至少擁有1~2年卓越的java開發者才有可能學完,而且這兩本書一般要讀完需要1年左右的時間。

其次,你需要看一些開源框架的原始碼,如果單單使用框架是實現業務而不去深入框架核心,架構思想,過幾年有可能會發現你脫離了框架什麼活也幹不成。

技術變化那麼快,程式設計師如何做到不被淘汰?

 

再者,你在這這個階段已經不能侷限於滿足於講程式碼寫出來,此時此刻的你需要追求高質量高效能的程式碼了,你此時需要研究的知識就會如下圖所示:

技術變化那麼快,程式設計師如何做到不被淘汰?

 

是不是學習了上面做這些技術就夠了呢?相信看到這裡的碼友已經知道答案了,沒錯,你還需要知道分散式架構的知識

技術變化那麼快,程式設計師如何做到不被淘汰?

 

技術變化那麼快,程式設計師如何做到不被淘汰?

 

另外,目前企業有大小,平臺有限制,甚至對開放的方式方案都出現了獨立的方式,Facebook每個模組的功能從設計到開發再到維護,由後端到前端再到客戶端都是通過一程式設計師來進行的,這些就是所謂的全棧工程師,那麼java開發中,我們伺服器也有其自身的獨到性;那麼如何將龐大的後臺系統分部成為多個功能獨立,部署獨立,維護獨立,鬆耦合的獨立服務呢?從而減少企業的溝通成本和維護成本呢?毫無疑問,這就是微服務。

技術變化那麼快,程式設計師如何做到不被淘汰?

 

最後,如果說開發是一個戰場,那麼程式猿們就是勇猛的戰士,我們的戰鬥需要協調合作,統一排程,統一部署。那麼完美的配合自然需要優秀的開發工具,那就就是我們的敏捷開發的學習。

技術變化那麼快,程式設計師如何做到不被淘汰?

 

專案實戰

技術變化那麼快,程式設計師如何做到不被淘汰?

加架構群:692-845-439 即可獲取以上價值1.8w的全套資料及視訊!

第二階段:大學畢業5到10年 很多本科同學,特別是研究生同學

10年後,就已經到了34、35歲左右了。也是前段時間網上廣泛討論的所謂34+歲現象。其實,年齡並不是問題的真正原因。真正的原因還是在於自身“競爭力”是否符合這個年齡所應該具備的。

到了這個年齡的人,往往已經不是“個人貢獻者”了,而是“團隊貢獻者”。團隊貢獻者可能是帶團隊的TL,也可能是個架構師,在技術決策上具有團隊影響力和話語權。

為什麼這些人能管理團隊或者有影響力呢?

從公司的經營視角看,一個管理團隊的人,他必須為業務的成功負責。說個大白話,一個TL管了N個人,他至少要能保證大家輸出所產生的價值,至少要高於這個團隊的工資、獎金、五險一金、OPEX、CAPEX等等吧。

負責領域的業務特點、發展趨勢、友商競爭分析有很好的洞察?能知道這個業務領域的客戶是誰?他們的需求是什麼?他們的痛點是什麼?

具備這種能力的人他必須要對技術有敏銳的洞悉力,知道何種需求需要使用哪種技術來解決,知道技術方向是否恰到好處。那麼這一切都建立在他順利的度過了完整的前五年。