天天看點

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

導讀:

   我前面兩篇文章分别寫了java軟體開發和java網際網路開發工程師的職業發展和技能要素,今天說一說Java桌面應用開發的程式員,他們一般來說對未來發展尤為困惑,确實,用Java可以建立出桌面應用,但隻要我們想開發真正的富桌面應用,還需要使用JNI、C/C++等等技能。所有,也許了解如何系統的建立自己的知識體系,是你困惑的的根本原因。

  是以,如果你正在(或未來)做Java桌面應用開發,并且對你未來的職業道路感到迷茫和不知所措。跟我來,我将就java桌面應用的發展路線和所需要的技能一一說明,或許對你會有所幫助。

簡單了解一下java桌面工程師:

首先,告訴你,Java桌面開發很強大:

Java桌面應用也有很多很成功的産品,比如eclipse,lutos notes,lotus sametime,DB2的管理控制工具,凡是IBM和oracle的桌面工具大部分都是Java寫的,不同點就在于有的是swing寫的,而IBM一般用SWT。

Java網際網路開發工程師的主要崗位職責(真的有人不知道):

從事軟體架構設計及編碼工作,參與系統的設計、測試以及部分開發工作。

言歸正傳--發展:

職業發展道路基本有兩條:技術專精路線、技術轉産品路線

1.技術專精--晉升軌迹基本是這樣:

第一條路線:初級Java開發---中級開發--進階開發---軟體架構師--系統架構師---項目經理----系統分析師

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

2.技術轉産品--晉升軌迹基本是這樣:

第二條路線:初級Java開發---中級開發--進階開發---軟體架構師--系統架構師--産品經理---産品總監

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

具體分析--晉升需要的技能要素:

第一條路線:技術專精路線

第一階段:初級--中級開發工程師(公司基層)

需要掌握的基本技能有:

Java常用架構

了解Java版本差別

Java程式設計基礎知識

常用團隊協作開發工具

Java GUI程式設計

Java常用架構(Struts MVC、Spring、Hibernate架構)

UML模組化語言

TCP/IP協定原理與應用

Java se技術

  以上是入門和提高的階段需要的技能,然後再學習基本的Windows核心原理 、Linux核心程式設計技術,一般來說,堅持學習一年,就可以成為一名中級開發工程師。

  初級階段是最迷茫的,工作很雜,還要學習技能,是很辛苦,容易讓人放棄,我的辦法是制定季度學習計劃,然後是執行和堅持,持之以恒(唉,我知道這裡面說起來容易做起來難,隻能看個人的修為了)。

  加快技能提高的方法通常有:看專業書,搜集資料,看源碼,多在網上讨論和回答問題。

我在學習專業書的一些習慣:

書一本本的看,貪多嚼不爛,在基礎章節多下功夫,高深部分在初期先不看。這樣學習進度可以保障,也有成就感。

記筆記

多做題,不光書上的題,還有網上的資源,也包括回答問題。

第二階段:成長為進階開發工程師晉升目标Java項目經理(公司中層)

需要再學習的技能有:

編譯原理

資料模組化

需求分析設計

資料結構

設計模式

軟體架構和系統架構相關知識

(别怕,6座網上有技能對應的學習資源,如:圖書、免費公開課)

從進階開發工程師到項目經理還要學習。

Linux核心程式設計

UNIX/Linux 系統管理

軟體項目風險管理

常用算法

軟體性能測試

socket套接字網絡程式設計

軟體工程系統知識

項目經理作為一名中層管理者還需要學習些錦上添花的知識,比如:流程管理、團隊營運管理。

第三階段:系統分析師向首席技術官發展(公司高層)

系統分析師工作會用到技能:

項目管理系統方法

網絡安全技術與解決方案(Cisco)

可行性分析以及模組化

系統分析師工作中會經常就項目與行業專家、使用者溝通,通過他們的意見,分析得出該項目所具備的特點、成本、風險等,最終給公司和客戶一個相對可靠的确定性結論或實施方案模型。

   是以,系統分析師經常在各種方案中進行抉擇,這時,是考驗你的判斷和分析能力,當然,這些能力都源自你的技術體系是否完備,還有就是經驗的累積了,這個職位沒有積累是不行的。

圖:

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

網際網路的圈子不大,做Java桌面應用開發的圈子更小,隻要你熱愛程式設計,肯努力,不斷的堅持,一定有一天會體會到“莫愁前路無知己,天下誰人不識君”的感覺。

第二路線:技術轉産品專精路線

   因為Java桌面應用開發多以技術外包或産品出售為目的,是以,即便要轉型到産品經理,也需要很紮實的技術根基才能把工作做好。

第一階段:選擇最佳轉型時機

  當你有轉型的想法的時候,嚴格意義上不叫轉型,應該叫轉崗。是以,在我的職業發展規劃建議是,當你完成初級初級到進階Java工程師,最好到了系統架構師的水準再轉到産品經理的角色上去,這樣,技術不會丢,項目經驗也積累了不少,做起産品經理會更加得心應手。(第一階段主攻技能,同第一條線路的第一階段一樣)

第二階段:轉型産品經理,目标向産品總監發展

做産品經理,你需要補充的技能有:

使用者心理體驗

快速原型設計工具

網站資訊架構

界面互動式系統設計

 還有就是人際關系的處理,你會同時和内外部人做各種協調。多看看團隊溝通與協作方面的書。

第三階段:産品總監---公司副總

你的知識體系将發生變化,主要需要補充帶團隊和管理方面的技能:

管理學

商業心理學

經濟學原理

資料分析

預算管理

  選擇産品--管理這條路線除了技術,同時還考驗你的綜合管理素質,這時的你将要管理幾個項目團隊,乃至營運整個公司。

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

最後,再回顧一下周鴻祎的話:如果說有天賦,那隻是在漫長的過程中不斷經曆痛苦,不斷嘗試失敗,不斷學習進而培養起來的。是以,不要聽那些有用的廢話。為自己的職業生涯負責,做規劃、選方向、定學習計劃,然後,去執行、去堅持。除此,沒有捷徑。(強調一下,我不喜歡周的做事風格,但他說的話和做的産品還是很靠譜的)

完整發展路線圖:

幹貨系列2:看看Java桌面應用開發的職業發展空間與必備技能

  這篇文章内容參考了6座網的,在6座網上有很詳盡的發展路線和技能、學習資源的介紹。

java幹貨系列文章: