我是一名10年開發經驗的中齡程式設計師,正在走程序生涯的後半部分

我是一名中齡程序員,幾個月前剛過完三十一歲生日。某個星期六的早晨,我參加了一個某公司的大型技術交流會,演講者正在竭力說服我們為什麼它會成為移動開發領域真正的下一個大事件。但對我來說,它有點像5年前的php ,將所有的邏輯都放在演示代碼裡面。但我“老”了,我認為這是因為自己還沒有完全理解它。

我是一名10年開發經驗的中齡程序員,正在走程序生涯的後半部分

我是一名10年開發經驗的中齡程序員,正在走程序生涯的後半部分

演講者展示完 ppt 後,現場進行編碼,還展示了大約半打我沒聽說過的配套開發工具,這些都讓我感到有點驚訝但是也有些沮喪。

當然,我並不是真的驚訝。在過去10年裡,我也掌握了一些比較流行的技術,並享受駕馭它們的樂趣。新的知識總能給編程帶來一絲激動的體驗,並且能讓事情變得更容易、更快和更清楚(效率更高,感覺自己很牛掰)。

但是在這個特別的早晨,在30歲的這個門檻上,我不得不承認我感覺有些落伍。我知道如果想跟上節奏,我得繼續付出,拋棄一些已經充分吸收的知識,吸收一些新的知識,為下一次旅程做準備。

有時候我在想,我的程序生涯能不能其他行業的專業人士,比如醫生到了40歲不用擔心他對血管系統的知識會蒸發,同樣的,律師、水管工、會計、英語老師,也是如此。他們積累的知識是相對穩定的,並隨著年齡會給予他們相應的尊重和補償。但是在編程領域,10年的經驗,似乎並沒有賦予同樣的優勢。

再過10年,我的40歲會成為什麼樣子,我不敢想象,我現在還有車貸,房貸......各種貸,我有自己的父母和自己的孩子要養。

作為程序員,我們不得不面對兩個問題。


一,知識衰退。

我們所知道的一切,不僅僅是編程,都有一個有效期,過了這個期限將不再有用。我 16 歲學會了開車,到現在依然用的很好,這種技能可以認為有一個相對較長的半衰期 。醫生的知識會越來越淵博,是因為他學習的每一件事情都是基於他以前的知識。而在編程領域,無論好還是壞,我認為:

程序員所積累的編程知識在十年後將有一半沒用。

這可能有些偏激……但起碼對我來說,似乎是正確的。如果我在這個期限中不學任何其他的東西,我敢打賭,只有大約一半的知識我可以在2028年繼續使用(比如長期活著的php),另一半可能都是沒用的(html5,也許?) 。當然,我會不斷獲得新的知識來取代要死掉的那些東西,但這足夠嗎? 2028年我會比現在知道更多(有用的)知識嗎?

二,知識積累速度。

在所有領域,必須滿足一定的知識門檻才能獲得“認證”(或至少可聘用),職業生涯的早期通常都是在努力獲取知識。然而,在編程領域,由於知識的快速衰減,似乎我們從來沒有真正度過“學生時期”,我們必須永遠一直學習。但是隨著年齡的增加,精力的減少我們永遠是比不過比我們年輕10歲的程序員。也許到時候也就剩下那點可憐的經驗了。

作為一箇中齡程序員,我們應該怎麼辦?


確定未來的目標

我們不是大齡程序員,對比大齡程序員來說,我們還有更多機會,對於年輕程序員來說,我們更成熟(經驗更豐富)。人是從歷練中成長的,古人云:三十而立,形容的不是一個人的社會地位,經濟來源,而是形容一個人對未來的目標,對人生的意向。要成為一個成功人,就應該早日為自己定下長期的發展目標,作為一個開發者也當如此。隨著人的性格,取向各有不同,大家為自己所選擇的路也有不同:

1.自立門戶,勇敢創業

30歲了,很多人會認為要想真正賺得了錢,就應該自立門戶,為自己創業建立一個基礎。像北京、上海、廣州這些一級城市,要買房子,一手樓基本要在 2萬~4萬元/平方米左右,而在一家普通的IT公司當上一個項目經理,基本收入一般都在1.5萬~3萬之間(除非在大型的跨國企業內工作,那另當別論),要買一間100平方米左右的房子,就算不吃不喝也幾乎要10年的年薪,所以選擇自主創業,是很多IT開發人員的一個未來目標,想要達到這個目標,就應該更多地把業務作為重點。

不可否認的一件事,在中國社會里很多時候講的是“關係”,即使這30年的改革開放使中國的經濟蓬勃地發展起來,但老祖宗幾千年來留下的“遺產”還是不能完全的磨滅。所以想要創業的人事建議你要多跟客戶打好關係,與合作伙伴保持互利互動的模式,這將有利於日後事業的發展,為自主創業打下夯實的基礎。

2. 急流勇退,退居二線

這也是不少人的選擇。很多人在有了家庭以後,感覺到壓力太大,人的一生並非只有事業,他們想把更多時間用於對親人的照顧,對孩子的關心上。所以很多人會選擇一份像系統分析、系統維護、高校教師、專業學院講師這一類的工作。收入穩定,而且往往沒有一線開發人員那麼大的壓力。

3. 不懈努力,更進一步

不管你是一個程序開發者或者是項目經理,如果你想繼續晉升一級,那還是會兩極分化的。從一個普通員工成長到一家公司的管理層,那所面對的事件會有很多變化。一個公司的總經理,要管理的不再是一到兩個項目的成本,而是整個部門的運作,整間公司的業務流程,所以要肩負的任務的會更重。

如果要從程序員上升為一個技術總監,那工作的方向也有所改變。像之前所說:一個程序開發者可能重視的是技術層面,講求與團隊之間的互動合作性,更注重的是開發的完善。而一個技術總監就無需要直接參加某個項目的開發,而注意的是開發的效率與成果,如何合理使用有限的開發資源,控制開發的風險和可能帶來的效果。

4,學習可以更持久使用的知識

如果您依然熱愛編程,對於我們考慮到時間有限,我們可以試圖去學習那些耐用的知識。也就是說,把精力投入在那些有更長的衰減期的知識上,比如,算法邏輯、應用安全、性能優化和架構。

我是一名10年開發經驗的中齡程序員,正在走程序生涯的後半部分

我是一名10年開發經驗的中齡程序員,正在走程序生涯的後半部分

如果您是一箇中齡程序員,您的職業有什麼規劃?


分享到:


相關文章: