天天看點

程式員的中場職業規劃

程式員的中場職業規劃

不好意思,這個題目又标題黨 了。中場這個時間是不太準确的,準确的說,應該是三至五年。是以這個職業規劃是三至五年的程式員需要做的。

我們先來看看這個時期的程式員是怎樣的狀态。大部分這個時期的程式員, 工作上已經遊刃有餘,可以獨擋一面,對所涉及的技術基本了然于胸, 能夠獨立完成上級布置的所有任務,如果項目有需要,還可以帶上三兩個新人,一起進行項目的攻堅,已經是團隊的主力成員。業餘時間相對剛入職場的時候,也多了起來。 另一方面,發現自己的成長較前三年,要緩慢甚至停止了。

為什麼要在這個時期再重新做職業規劃呢? 最核心的問題,就是你的成長速度變慢甚至停止了。如果不調整,繼續下去,最後隻會不斷落後,直到被整個行業抛棄。

這個時期對于很多人就是個岔路口,有的人意識到了問題,看到了這個岔口,開始思考要選那條路走下去。有的人沒有意識到這個問題,渾然不覺,可能幾年後還在原地踏步。是以這裡第一個關鍵,就是要意識到需要再次進行技術職業規劃了。

對于程式員來說,出路的選擇可以是很多的。 全部例舉一遍也不現實,我下面例舉了一些常見的選擇。分别來說說,對大部分的人比較有參考價值。

在相同的技術方向内,可以有業務開發和基礎開發的選擇。

業務開發的劣勢: 大部分業務開發崗的技術含量不高,平常做的工作更多是增删查改,if else, switch 等。做久了之後,感覺技術沒有提升,也沒有技術成就感。有很強烈的在打雜的感覺。

業務開發的優勢: 跟業務産品結合最緊密,離客戶使用者最近,在業務和産品上,比起基礎開發崗的同學有更多的接觸,綜合能力的成長會更好,最終能力會更加全面。職業發展空間更加廣闊。

個人建議:很多做業務開發的同學,做到後期,在技術上已經沒有什麼提升空間後,就開始有很強烈的在打雜的感覺。 這種感覺很正常。事實上,業務型開發,當已經跨過技術能力門檻後,就應該要開始關注業務和産品了。如果每天隻是關注代碼上的增删查改,if else,那無論是技術還是業務産品能力都不會有提升,反而是在空耗時間。

那怎麼是關注業務呢?去年,我們部門調過來一個技術總監,他是做前端的,一直做的都是業務開發。我跟他接觸一段時候後,發現他的産品能力特别強,甚至還強過很多的産品經理。有一次聊天,聊到這個事情。他跟我說,他做一線開發的時候,就很喜歡思考産品的東西,一個産品需求下來,會先想想這個需求對使用者是不是真的有用,這麼設計對使用者是不是最好的,有沒有更好的替代方案,有想法,有時候還會跟産品讨論,怼回産品。

幾年下來,他的産品能力以及變得很強,現在他已經是我們的一個産品負責人了。 其實大家有沒有發現,很多厲害的産品,都是技術出生的,比如馬化騰,張小龍,雷軍等。事實證明,技術人最終在産品上也是可以做的很好的。

看了上面的例子後,大家不會再覺得業務開發就僅僅是增删改查, if else 了吧。隻要内心真的喜歡做業務,做産品,後面可能會有很大成就的。

基礎開發優勢:做的事情技術含量高,因為跟業務相關性很低,技能複用性很高。比如做熟了rpc架構或存儲系統,跳到其公司做基礎開發,依然可以做的很出色。

基礎開發劣勢:整個職業生涯層面,接觸的事情太窄,基本就是技術。有時會産生一定的孤獨感。需要從業人員真的很喜歡鑽研技術,能夠忍受比較長期的寂寞。職業發展上幾乎隻能走專家路線。後期可發展路徑比較窄。

個人建議: 做基礎架構的同學一般不會覺得沒有技術含量,但做久了之後,有人會開始覺得悶或者覺得沒有驚喜。看着隔壁業務部門的同學,這個業務達成了多少多少的DAU,那個業務又拿了公司級的業務突破獎。然後誰誰,因為業務擴張,又升職加薪了。對于這點,我隻能說,很多同學隻看到活下來的,沒有看到死去的。

就網際網路行業來看,死掉的業務應該是不計其數了,估計成活率1%都沒有。 你看頭條APP 工廠,生産上千款的APP,最後你知道的又有多少。是以想轉去做業務開發的同學也要想清楚這個問題。而且業務開發本身的“技術含量低”,“打雜”感, 會讓很多原本做基礎開發的同學适應不了。很多基礎開發的同學,本身對業務,對産品也沒有特别強烈的感覺,最後技術成長不了,業務産品能力也沒有提升,反而跑偏了。

可以看出,業務開發和基礎開發,都是各有優劣,最重要的是要根據自己的内心和性格特質來進行選擇。做自己喜歡的事情,總會做的更出色。

除了在同方向上做業務開發和基礎開發的選擇外,還可以轉崗。比如做前端的同學覺的前端技術含量不夠,想轉去做背景。做工程的同學想轉去做資料分析,深度學習。 

工程類崗轉工程類崗,相對還好,差異不會特别大,需要的基礎能力和思維方式相差不會很大。比如無論你前端,背景,用戶端,代碼,算法,作業系統,網絡這些知識經驗和能力都是共通的,遷移的成本比較小。但工程類轉崗資料分析或深度學習這種算法類,跨度就很大了。對于算法類的崗位,對代碼能力,底層機制的了解要求并不高,需要的是更好的數學能力,英語能力(要做好,看英文paper是必須)。

很多同學對自己很自信,覺得隻要自己努力就一定可以,但你也要明白,你的競争者也很努力的,而且他們更專業(有不少就是數學系畢業的),你确定能跑的更快嗎?這裡有個建議,建議想轉算法研究崗的同學,先自學一段時間,比如半年或一年,如果真的覺得自己合适,再轉崗過去。

最後說說轉非技術崗位。 做了三年的技術後,發現其實自己并不喜歡做技術。 更喜歡做産品或商務或其他崗位。 個人覺得如果出現這種情況,并且确認是内心所向,就應該果斷轉了。不要拖,不要浪費時間。

以上是技術人員在工作三五年左右的時候,需要再做的一次職業規劃。無論你會不會改變方向和崗位,你工作到這個時間段的時候,都應該思考下這個問題。一是可以及時的做調整,二是當你去做這個思考的時候,你也會開始有意識地去了解,接觸其他的方向和崗位。更早的開化,你更能先人一步,做出合适自己得選擇。

程式員的中場職業規劃

繼續閱讀