1. 程式人生 > >給迷茫的Java程式設計師一些中肯建議,你還在虛度光陰嗎?

給迷茫的Java程式設計師一些中肯建議,你還在虛度光陰嗎?

最近好多人私信問我,該怎樣才能成為高薪架構師,還有一個就對當前的狀態感到迷茫,我在此做一個簡單的說明,或者對迷茫中的你來說有些許幫助。

當前你感到迷茫嗎?

有很多人對現在的工作感到很沒意思,因為當前的工作,完全是實現業務,技術上沒有任何提高。在這種狀態下就會感到迷茫,特別是一想到將來這種迷茫感就更強烈了。

與其說迷茫還不如說是擔憂,隨著時間的推移,自己的技術又沒有長進,所以感覺憂心忡忡。

這裡分為二種人:

*混日子,過一天算一天

這一種的我就不過多討論了,沒有意義。我也碰到過很多這樣的同事,此類程式設計師已經廢啦。

*想提高自己的技術,往架構師方向努力。

給我發私信的人,大部分是這一種。首先,可以看出來,這些人都是有自己理想的人,也會付諸實踐的。想往架構師方向走,但是卻苦於沒有人帶,自己也不知道如何成為框架師。再不改變,此類程式設計師可能會也廢。我想借這個文章和大家聊聊架構師這個話題,純屬個人理解,與對錯無憂。

架構師的定義?

個人覺得架構師需要具有以下幾特點:

知識廣度:需要知道主流技術為什麼誕生,能解決什麼問題?如果同一種業務用不用的技術來實現,會有什麼哪些優缺點?比如:流行的ORM框架Mybatis 和 hibernate ,他們之間的優缺點是什麼?要有清晰的認識會能在技術造型時做出正確的決定。

抽象能力:對業務和技術進行抽象。業務抽象就是對需求進行分析後,能夠建立完美的實體類以及他們之間的聯絡。技術抽象是對整體架構進行一個分層,各層之間的互動。這至關重要,如果技術抽象能力不足,這會導致整個系統的架構不靈活,難以維護和擴充套件。

知識深度:至少是某個領域的專家,比如訊息佇列,或者activeMQ熟悉其原始碼,知道其實現。

優秀的學習能力:對新的技術和前沿性的技術進行學習,使用它來解決工作中的業務問題。

那麼你該如何去做呢?我覺得可以從以下幾個步驟開始:

1:紮實的Java 基礎,Think in Java上介紹的內容都能理解,做到這一步恭喜成為了程式設計師。

2:熟練使用主流框架,如:mybatis,spring 等。

3:研究過至少一種以web框架的原始碼,如spring mvc ,struts 等。

4:架構過或者參與過高併發系統設計,知道如何應對突發情況。

5:對自己所處的業務能夠根據自己的知識維度,提出優化建議或者預測其風險點。

其實架構師並沒有想象中的那麼難,但是你要看是什麼公司的架構師,我見過一個小企業的架構師,工作八年了,但是感覺真的水平就只有阿里P6這樣的級別,其實能否成為架構師跟機遇有很大關係,比如一個程式設計師,以上都做到了,但是公司並沒有給他這個機會去做,一個真正架構的機會。因為之前的架構師不離職他就沒有機會,這就是現實!

針對以上問題,其實更多的是技術方面的東西,我自己收集整理了一套Java架構方面的路線圖,分享給目前工作2~5年左右的Java程式設計師們,可以梳理一下自己的技術,這些東西可能你們平時在工作中接觸過,但是缺少的全面系統的學習,所以掌握的都不深,希望看了路線圖以後大家知道從哪裡開始入手學習。

除了這份路線圖,還收集了一些關於Java高併發、分散式、JVM、spring原始碼分析以及效能優化,設計模式等相關的技術資料(電子書)一併分享在我的填坑之路大家庭裡(860113481),歡迎大家來裡下載學習以及交流討論。

深入核心,直擊故障,拒絕蒙圈

二。應用框架 原始碼解讀

站在巨人的肩膀上,收貨不一樣的視野

三。分散式

成為網際網路架構師,你想要的都在這裡

四。微服務

你還不知道微服務》那怎麼加(zhuang)薪(bi)

五。團隊協作

讓你的團隊開發效率提升十倍的祕密都在這裡了

六。B2C商城專案實戰

擼起袖子幹實事專案經驗那點事

歡迎工作一到五年的Java工程師朋友們加入Java填坑之路:860113481 下載電子書學習資料以及視訊學習資料!