在這個IT系統(tǒng)動輒就是上億流量的時代,Java作為大數(shù)據(jù)時代應用最廣泛的語言,誕生了一批又一批的新技術,包括HBase、Hadoop、MQ、Netty、SpringCloud等等 。
一些獨角獸公司以及騰訊、阿里、百度、網(wǎng)易等知名大廠對Java人才的需求量連年升級,有2年工作經驗的優(yōu)秀程序員能輕松達到30w+的水平,但與此同時對人才的要求也越來越高。
很多學生都會疑惑,同樣是程序員嗎,同樣是學的Java,同樣掌握了相應的技術,為什么自己就不能拿到BAT企業(yè)的Offer,不能拿到50W+的年薪?自己和年薪50W+的程序員差距在哪里?
二、工作效率
一個程序員每天寫出來的有效代碼(刨去自動生成和復制粘貼),大約就100~200行。我們的時間還耗費在需求討論、思路整理、代碼編譯、提交、部署測試多個環(huán)節(jié),優(yōu)秀的工程師總能想到很多辦法來提升自己的工作效率,所以一線互聯(lián)網(wǎng)公司架構師,都會配置“效能平臺(如阿里的云效平臺)”來通過一整套的CI/CD方案來提高研發(fā)效率。
三、解決問題的能力
編程一個腦力活,如果把它做成了體力活,這就代表是時候改變一下了。現(xiàn)在的框架封裝越來越便捷,通過springboot剛畢業(yè)都能把web開發(fā)玩的666,通過netty的相關封裝,一年新手也能寫出來性能不錯的網(wǎng)絡程序。架構師和普通開發(fā)的區(qū)別不在于會使用多少新潮的框架或者api,而在于對底層原理了解的程度。如果用的開源框架在生產環(huán)境出現(xiàn)問題,出面解決的肯定是年薪50W+的架構師。話說,來看看自己對spring框架原理知多少?
四、學習能力
Java往深往上走,下到C/C++,上到中間件、架構方式,按照IT行業(yè)技術發(fā)展的速度,不被掉隊那就得不斷的學習。普通程序員還在糾結業(yè)務代碼怎么實現(xiàn),技術領導們每天的工作就是研究各種高并發(fā)/新框架/分布式這些東西,慢慢下去差距能不大嘛,只有用很快的速度,掌握必備知識,才有一搏之力!
五、軟技能
多少人努力進入大廠,但終究默默無聞進,默默無聞的出來,BAT等一線公司數(shù)十萬技術人,你知道多少大牛,記住的有多少呢?平臺重要,更重要的是,能在平臺發(fā)展到什么程度。每個公司都有他的管理尿性,有它的企業(yè)氛圍,軟技能決定了能到什么職位!看到差距,才知道哪里需要改進,有了目標,更有學習動力。技術人成長不能再單打獨斗,要學會與人交流,學會將別人的知識為自己所用。預祝每一位小伙伴都能拿到自己滿意的工資待遇,不負韶華!
六、最火的語言還是Java?
下面是2017年7月編程語言排行榜 Top 10榜單:
Java語言在2016-2017依然占據(jù)榜首。Java作為最受歡迎的語言,在編程語言高薪行列里依然名列前茅,無疑是想進入互聯(lián)網(wǎng)行業(yè),拿高薪的最佳選擇。
光有技術還不夠
當然除了技術過關以外,還該有Java領域有豐富的經驗,獨到的見解。能夠從前臺到后臺獨立的搭建完成,良好的溝通能力及團隊協(xié)作能力等。
一般情況下,就算不去大公司,很多小公司的技術總監(jiān)年薪上也差不了多少呢。當然這些都需要一些時間沉淀,沒辦法速成。
七、Java程序員的職業(yè)發(fā)展有幾個選擇
Java程序員的職業(yè)發(fā)展有幾個選擇:專注于技術,成為技術專家;轉型到技術型銷售、技術支持等;隨著技術成長,從技術性管理到高級管理。
這歸根結底,都是以Java技術為基礎。在扎實的技術基礎上(高級軟件工程師),如果有著比較強的抽象設計能力,又打算專注于技術開發(fā),架構師是個好的選擇;如果性格更適合做管理,情商能力突出,技術型管理應該是下一步的方向。這種發(fā)展規(guī)劃屬于‘瘸腿走路’的類型,各有側重主攻發(fā)展的職業(yè)方向,也是目前一般程序員普遍采用的發(fā)展路線規(guī)劃。
八、職業(yè)規(guī)劃
已經工作兩年以上的程序員可以有幾種基本的職業(yè)規(guī)劃:技術專家、軟件架構師、實施顧問或銷售。其中程序員最主要的發(fā)展方向是資深技術專家,無論是 Java、.NET還是數(shù)據(jù)庫領域,都要首先成為專家,然后才可能繼續(xù)發(fā)展為架構師。
盡管架構師的職位可以工作一輩子,待遇也非常好,對于科班出身的程序 員最為適合,但這種工作職位非常有限,因為在中國目前的IT行業(yè),架構師需要的條件比較復雜,而且需求量也比較少,這也是我國軟件行業(yè)走向國際并有待成熟 的因素之一。
九、管理能力和專業(yè)知識技能
目前國內缺乏的是管理能力和專業(yè)知識技能并駕齊驅的IT人才。特別是懂得運用目標管理技術的項目管理人才,既掌握核心技術又有全局掌控能力的項目管 理人才,非常難找。我建議對于大多數(shù)人來說,首先是要專,只有在技術方向上做得比較深入,才能適當做工作調整,把自己轉變?yōu)槟硞€領域的專家。
根據(jù)自己的情況,決定自己做Java架構師還是高級的顧問銷售,另外一部分人可能就會走向管理,這和個人性格與情商有關。軟件優(yōu)秀的管理者都必須懂得技術,掌握核心技能的人才向管理崗位轉型有很大的優(yōu)勢,因而提升管理能力成了轉型的關鍵。
十、總之,Java程序員要根據(jù)本身的基本素質、技術能力選擇開發(fā)層次,由低到高,逐步發(fā)展。也是一名程序員本身具備相應素質的循序漸進的發(fā)展軌跡,包括很強的技術背景和綜合管理才能等素養(yǎng),這也就是所謂‘兩條腿走路’的職業(yè)規(guī)劃發(fā)展路線。