首頁>科技>

2020 年,據說是程式設計師的本命年:

這一年,發生了很多事情,之前我也有提到,今年要實現收入翻倍的小目標,很幸運,我的確實現了,在 2020 這樣的大環境下,這是比較讓我欣慰的。

隨著工作的時間越久,就越能明白一個道理,不管你入行多少年、多喜歡或是多會 Java 程式設計,在學習和解決問題上總會碰到障礙。

01加快知識積累速度

在程式設計領域,因為知識的快速衰減,我們必須一直學習。

今年,我更像是處在知識的衰退和流失階段,經過了五、六年的學習和歸納,發現自己實際知道的有用的東西已經在逐年遞減了。

所以,這一年我加快了知識積累的速度,在知識獲取上,把精力投入在那些有更長衰減期的知識上,比如,原始碼分析、微服務、效能最佳化和架構等知識點。

現在不少公司都很重視高併發、高可用的技術,特別是一線網際網路大廠,分散式、JVM、Spring 原始碼分析等知識點已經是面試的必考題。

持續獲取新的經驗

我身邊有不少朋友、同事雖然獲得了豐厚的薪酬,但很少有機會接觸新興事物。而再過 3、5 年,大家會意識到,曾經的知識儲備已經過時,薪酬與實際價值相去甚遠。

所以,這一年我儘可能為自己爭取獲得新經驗的機會,並且,在學習新技術前也會考慮這幾個問題:

這個技術解決什麼樣的問題?

這個技術有沒有同類型的替換品?各自的優缺點是什麼?

我學習後對我有什麼好處?同樣的時間我花去學習其他技術是不是更好?

一個有能力的程式設計師,需要透過技術迭代,去影響公司的技術路線,逐步更新技術選型,從而去引導公司使用新的技術。

03

合理的職業規劃

先問你幾個問題:

這是你工作的第幾年?

你願意一直和新人一樣,做最基礎的重複性工作嗎?

你願意一直寫程式碼,不關心其他的業務內容和行業現狀嗎?

一個專案的前期需求、設計、後期部署維護,老闆給到你,你說搞不定,行嗎?

我經常和大家強調,千萬不要認為程式設計師就是寫程式碼的。

如果你不是剛入行的新人,而是有了 1-3 年甚至更久的工作經驗,你該學習怎麼進行需求分析,怎麼設計資料庫,怎麼寫各類文件,怎麼寫更好的程式碼等等。

而當你準備跳槽時,你會發現,面試,是你第一個需要面對的問題。

不同公司面試的著重點不同,但卻有一個共同點:Java 基礎。

你對 String 物件建立的理解、常用的框架是什麼、Java 記憶體分配機制是什麼、類是如何載入的、常用的設計模式是什麼,怎麼獨立完成一個模組等等,都是你需要學會解決的問題。

下面分享一張 Java 技能圖譜給大家,涵蓋了 Java 程式設計師必備的技術棧,大家可以根據圖譜進一步查漏補缺。

當你沒有明確的⽅向,沒有規劃,或者不知道自己有什麼收穫的時候,這就是最大的危機了。

我的建議是,在工作中你要保持隨時可以跳槽的能力,這個能力包括硬實力和軟實力。

可能很多人會說,我當然知道學習的重要性,也很想系統提升自己的能力,儘快升職加薪,但問題是根本不知道從哪兒開始,甚至我手頭上的業務問題都還沒有解決,更沒有精力去給自己的未來做規劃。

這門課程的學習路線,從原始碼剖析、框架最佳化和定製、分散式架構設計、再到海量資料處理、高併發處理、最後到效能最佳化和調優,該學的東西都涵蓋到了。

11
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • Shopee對戰Lazada,爭搶這一350億美元的藍海市場