1. 程式人生 > >開發四年的Java程式設計師,該如何度過自身瓶頸期?

開發四年的Java程式設計師,該如何度過自身瓶頸期?

從畢業到現在已經快4年啦,一直在Java的WEB開發行業混跡。我不是牛人,但是自我感覺還算是個合格的程式設計師,有必要寫下自己將近4年來的經歷,給自我以提示,給剛入行的朋友提供點參考。

貌似這一點適應的行業最廣,但是我可以很肯定的說:當你從事web開發一年後,重新找工作時,才會真實的感受到這句話。

工作第一年,往往是什麼都充滿新鮮感,什麼都學習,衝勁十足的一年;WEB行業知識更新特別快,今天一個框架的新版本,明天又是另一個新框架,有時往往根據專案的需要來不斷學習新東西;所有,很多時候感覺,自己用過的東西真多呀!但是真正深入研究的東西卻不多。

面試,是跳槽後第一個需要面對的問題;而且不同公司面試的著重點不同;但是卻有一個共同點:Java基礎是必考的。工作第一年,可能問你String物件建立的理解,常用的框架是什麼等等;工作第二年,就問你Java記憶體分配機制是什麼,類是如何載入的等等;第三年,就問你常用的設計模式是什麼,你在工作中充當什麼角色,怎麼獨立完成一個模組等等;

可以看出------這是一個典型的程式設計師的成長過程:

使用Java---->深入理解Java積累經驗------>獨立設計分析能力------>獨當一面的多面手!

因此,必須學習:

列舉一些技術

比如對集合類,併發包,IO/NIO,JVM,記憶體模型,泛型,異常,反射,等有深入瞭解,最好是看過原始碼瞭解底層的設計。比如一般面試都會問ConcurrentHashMap,CopyOnWrite,執行緒池,CAS,AQS,虛擬機器優化等知識點,因為這些對網際網路的企業是絕對重要的。而且一般人這關都過不了,還發鬧騷說這些沒什麼用,為什麼要面試。舉一例子,在使用執行緒池時,因為使用了無界佇列,在遠端服務異常情況下導致內層飆升,怎麼去解決?你要是連執行緒池都不清楚,你怎麼去玩?

1. 資料庫再舉一例,由於對ThreadLocal理解出錯,使用它做執行緒安全的控制,導致沒能實現真的執行緒安全。所以作為一個拿兩萬的JAVA程式設計師這點基礎是要有的。最常用的是Oracle了(當然銀行專案等需要DB2等),熟練掌握使用儲存過程,觸發器等;

2. UML

專案中經常要寫文件,專案經理的基本功,程式設計師走向設計的基本功;

3. 設計模式

這個建議多看吧,在閱讀原始碼中體會;

4. linux系統

需要掌握常用的linux命令------部署在windows作業系統上的專案很少吧。

其他就不多說了,大家可以補充。

學習上,興趣是最大的老師;專案驅動也是不錯的選擇,總之,不學習不行。

5.現今面試基本都會問到這些:多執行緒 、高併發 、IO、 NIO、 分散式、 JVM原理與調優 、各種框架(原始碼級別)、 SQL效能優化、 搜尋引擎、 規則引擎、叢集、 負載均衡、 Tomcat效能優化、 Nginx、 RabbitMQ、 Redis、 Memcache、 MongoDB、 AngularJS、 Activity工作流、 WebService、 Https、網路通訊、Linux還有各種設計模式。

所以為了將來不被問倒,那就需要現今的努力學習,增強自己的力量。

下面分享的是本人四年來收集整理的學習線路圖。對於想要提升自己,對自己未來迷茫的Java工程師們,如需要這些架構路線圖,以及我們整理的一些架構師精講資料,涉及的知識點(Dubbo、Redis、設計模式、Netty、zookeeper、Spring cloud、分散式、高併發等架構技術)。給大家推薦一個程式設計師學習交流群:805685193。群裡有分享的視訊,還有思維導圖
群公告有視訊,都是乾貨的,你可以下載來看。主要分享分散式架構、高可擴充套件、高效能、高併發、效能優化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分散式專案實戰學習架構師視訊。

1、原始碼閱讀

作為程式設計師,閱讀原始碼能使我們更加的理解提升。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

Spring原始碼

開發四年的Java程式設計師,該如何度過自身瓶頸期?

MyBatis原始碼

2、分散式架構

對於現在網際網路公司,分散式是我們需要掌握的。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

分散式架構

3、團隊開發工具

一個好的開發工具能讓團隊效率提升十倍。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

團隊協作開發

4、微服務架構

微服務現在是非常火的主流技術,如果我們沒掌握,那麼升職加薪也沒底氣。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

微服務架構

5、設計模式

對於我們程式設計師來說,常見的設計模式是編碼必備,掌握了它我們會變得更強。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

設計模式

6、併發程式設計

對於我們來說,從架構設計,到應用層調優,再深入瞭解底層原理,紮實的Java基本功才能讓自己變為掃地神僧:

開發四年的Java程式設計師,該如何度過自身瓶頸期?

併發程式設計

給大家推薦一個程式設計師學習交流群:805685193。群裡有分享的視訊,還有思維導圖
群公告有視訊,都是乾貨的,你可以下載來看。主要分享分散式架構、高可擴充套件、高效能、高併發、效能優化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分散式專案實戰學習架構師視訊。

開發四年的Java程式設計師,該如何度過自身瓶頸期?

 

開發四年的Java程式設計師,該如何度過自身瓶頸期?

 

開發四年的Java程式設計師,該如何度過自身瓶頸期?

 

開發四年的Java程式設計師,該如何度過自身瓶頸期?

 

開發四年的Java程式設計師,該如何度過自身瓶頸期?

 

開發四年的Java程式設計師,該如何度過自身瓶頸期?

給大家推薦一個程式設計師學習交流群:805685193。群裡有分享的視訊,還有思維導圖
群公告有視訊,都是乾貨的,你可以下載來看。主要分享分散式架構、高可擴充套件、高效能、高併發、效能優化、Spring boot、Redis、ActiveMQ、Nginx、Mycat、Netty、Jvm大型分散式專案實戰學習架構師視訊。