職業發展道路基本有3條:
第一條路線(技術專精): 初級Java開發---中級--高級---項目主管--Java項目經理---網站架構師----資深專家
第二條路線(技術轉產品):初級Java開發---中級--產品策劃--產品經理---產品總監
第三條路線(技術轉運營):初級Java開發---中級--運營---運營經理---運營總監
這篇文字主要談第一條路線:技術專精
第一條發展路線:技術專精路線
發展軌跡:初級Java開發---中級--高級---項目主管--Java項目經理---網站架構師----資深專家
第一階段:初級--中級開發工程師(公司基層) 首先學習Java常用框架(Struts MVC、Spring、Hibernate框架)、oracle數據庫、JavaScript腳本基礎、JSP動態網頁開發、Java程序設計基礎知識,這是一個入門和提高的過程,一般來說,這個階段,快則半年,慢則一年。再學習常用web服務器配置方面的知識,你應該可以成為一名中級開發工程師。
這個階段的關鍵在於制定學習計劃,按季度定,制定學習計劃的目的,就是為了形成學習習慣,有助於執行和堅持下去。除了看專業書之外,還可以多在網上討論和回答問題,這個對你的提高也很有幫助。
我在學習專業書的一些習慣:
書一本本的看,貪多嚼不爛,在基礎章節多下功夫,高深部分在初期先不看。這樣學習進度可以保障,也有成就感。
記筆記,記下要點,回顧的時候看要點就行了。
多做題,不光書上的題,還有網上的資源,也包括回答問題。
【必要技能】:
Java版本區別與瞭解
HTML、CSS
oracle數據庫
JSP動態網頁開發
JavaScript腳本基礎
Java程序設計基礎
常用團隊協作開發工具
Java常用框架
【錦上添花】:
常用web服務器配置
軟件需求說明文檔寫作
【相關圖書】:
Java虛擬機規範(Java SE 7版)
瘋狂Java講義(第2版)
HTML、CSS、JavaScript網頁製作從入門到精通
DBA的思想天空:感悟Oracle數據庫本質
Git權威指南
JSP應用與開發技術
Spring 3.x企業應用開發實戰
Struts 2.x權威指南(第3版)
精通Hibernate(第2版)
第二階段:成長為高級開發工程師-----Java項目經理(公司中層)
高級開發工程師需要學習的技能有:軟件工程系統知識、常用算法、MySQL數據庫、大型服務器負載均衡優化技術、oracle數據庫、數據結構、需求程序設計文檔,測試文檔。掌握這些,你應該可以獨擋一面了。
Java項目經理已經是公司的中層了,這時需要學習的有:高併發網站架構設計、軟件項目風險管理、常見軟件開發模式、DB2數據庫應用、編譯原理 、海量數據庫解決方案。項目經理除了技術過硬以外,還需要學習項目管理方面的知識,比如:流程管理、團隊運營管理。
【必要技能】:
大型服務器負載均衡技術
軟件工程系統知識
設計模式
數據結構
需求分析設計
常用算法
MySQL數據庫
【錦上添花】:
HTTP和UNIX域協議
面向對象基礎
高併發網站架構設計
常見軟件開發模式
團隊運營管理
團隊溝通與協作
【相關圖書】:
海量運維、運營規劃之道
軟件工程:實踐者研究方法(原書第7版)
編程珠璣(第2版)
數據結構與算法分析:C語言描述
需求分析與系統設計
算法心得:高效算法的奧秘
高性能MySQL
HTTP權威指南
設計模式 可複用面向對象軟件的基礎
構建高性能Web站點(修訂版)
第三階段:網站架構師向資深專家發展(公司高層)
網站架構師工作會用到:數據建模、NoSQL非關係型的數據庫、Windows Server服務器架設管理、流程管理、Microsoft SQL Server數據庫應用、高併發網站架構設計、分佈式系統原理、數據庫系統優化、UNIX/Linux 系統管理、軟件項目風險管理。這時候,你可以以一個資深專家的身份去回答問題,發表一些專業文章,參與行業交流。這也標誌這你已成為公司的高層,有資格進入這個領域的核心圈了。
[必要技能]:
分佈式系統原理
DB2數據庫應用
流程管理
數據建模
程序設計語言原理
數據庫系統優化
軟件項目風險管理
Microsoft SQL Server數據庫應用
NoSQL非關係型的數據庫
UML建模語言
[錦上添花]:
軟件開發常用測試
預算管理
數據庫系統優化
統計學
數據挖掘
網絡安全技術與解決方案(Cisco)
【相關圖書】:
分佈式系統:概念與設計(原書第5版)
循序漸進DB2 (第2版)
數據庫程序設計教程
程序設計語言原理
MySQL管理之道:性能調優、高可用與監控
人月神話
深入NoSQL
UML和模式應用(原書第3版)
安全軟件開發之道
數據挖掘:概念與技術(原書第3版)
第一條技術專精路線基本涵蓋了一個Java互聯網網站開發工程師的整個技術發展生涯,是否能走下去,關鍵在自己,需要不斷的堅持,需要強大的韌性,需要長期專注。
下面附上完整的路線圖:
在技術方面無論我們怎麼學習,總感覺需要提升自已不知道自己處於什麼水平了。但如果有清晰的指示圖供參考還是非常不錯的,這樣我們清楚的知道我們大概處於那個階段和水平。
我規劃了幾張體系圖,可以瞭解一下。
一:常見模式與工具
學習Java技術體系,設計模式,流行的框架與組件是必不可少的:
![Java進階學習路線圖](http://p2.ttnews.xyz/loading.gif)
二:工程化與工具
工欲善其事必先利其器,不管是小白,還是資深開發,玩Java技術體系,選擇好的工具,提升開發效率和團隊協作效率,是必不可少的:
![Java進階學習路線圖](http://p2.ttnews.xyz/loading.gif)
三:分佈式架構
高併發,高可用,海量數據,沒有分佈式的架構知識肯定是玩不轉的:
四:微服務架構
業務越來越複雜,服務分層,微服務架構是架構升級的必由之路,Java技術體系,和微服務相關的技術有哪些呢?
五:性能優化
任何脫離細節的ppt架構師都是耍流氓,向上能運籌帷幄,向下能解決一線性能問題,Java技術體系,需要了解:
六:B2C商城
這個不用多說,作為一個架構師,怎麼能沒有實戰經驗呢?
最後送福利了,現在私信我“資料”即可獲取高清版思維導圖,還有Java工程化、高性能及分佈式、高性能、高架構、性能調優、Spring、MyBatis、Netty源碼分析等多個知識點高級進階乾貨的直播免費學習權限及相關視頻資料,還有spring和虛擬機等書籍掃描版
閱讀更多 Java邵先生 的文章