謝邀。作為一名Java程序員還是比較有話語權(quán)的。
首先聲明自己的薪資沒有20k,第一是工作年限沒達(dá)標(biāo),第二是技術(shù)水平不夠,三是項(xiàng)目經(jīng)驗(yàn)不足。
這間接也說明了達(dá)到20k需要什么條件:
- 三年以上的工作經(jīng)驗(yàn),大部分靠Java拿20k的都是三年以上工作經(jīng)驗(yàn),畢竟不像算法工程師一出來就是三十萬年薪;
- 能獨(dú)當(dāng)一面的技術(shù)水準(zhǔn),可以在項(xiàng)目或產(chǎn)品的某個功能模塊掌握充足的業(yè)務(wù)技能,比較全面的技術(shù)水平,不需要太深,但是一定有至少一項(xiàng)是比較擅長的。
- 豐富的項(xiàng)目經(jīng)驗(yàn)和解決問題的能力,一般還可以擔(dān)任小團(tuán)隊(duì)leader的角色。
技術(shù)上講究一專多長,無論你是搞Java還是搞其他技術(shù),在一個大技術(shù)領(lǐng)域下的某個重要技術(shù)棧上術(shù)業(yè)有專攻,那么一定可以拿到20k甚至更高的薪資。
但是請記住,光靠技術(shù)水平拿高薪是不切實(shí)際的,Java程序員最好還是需要具備領(lǐng)導(dǎo)團(tuán)隊(duì)的能力。
謝謝邀請!
作為一名從業(yè)多年的程序員,也出版過Java編程書籍,所以我來回答一下這個問題。
首先,Java開發(fā)人員的薪資待遇與自身所處的行業(yè)、工作崗位級別、開發(fā)能力、工作地區(qū)和學(xué)歷等因素都有一定的關(guān)系。當(dāng)然,技術(shù)能力是比較核心的因素。
對于Java程序員來說,要想達(dá)到較高的薪資待遇,一種選擇是從事研發(fā)級工作崗位,另一種選擇是從事比較前沿的應(yīng)用級開發(fā)崗位。
研發(fā)級工作崗位的主要工作任務(wù)是完成平臺開發(fā)(面向行業(yè))、容器開發(fā)以及面向行業(yè)產(chǎn)品的系列研發(fā),比如從事大數(shù)據(jù)平臺研發(fā)就是比較典型的研發(fā)級崗位。Java目前在整個IT行業(yè)內(nèi)是比較常見的研發(fā)級工具,比如目前比較流行的Hadoop平臺就是采用Java語言開發(fā)的,另外還有大量的開發(fā)工具和平臺系統(tǒng)也是采用Java語言開發(fā)的,比如Oracle、SAP、Eclipse等。
從事研發(fā)級開發(fā)崗位需要具備扎實(shí)的基礎(chǔ)學(xué)科基礎(chǔ)(數(shù)學(xué))和計(jì)算機(jī)基礎(chǔ),對于知識結(jié)構(gòu)并不是很豐富的開發(fā)人員來說,通過讀研來完成崗位升級是比較常見的選擇,近些年來也有不少應(yīng)用級程序員都是通過讀研來完成崗位升級的。
從事應(yīng)用級開發(fā)崗位要想獲得較高的薪資待遇,需要具備三個條件,其一是緊跟技術(shù)發(fā)展趨勢,從事熱門領(lǐng)域的開發(fā)工作,比如目前從事大數(shù)據(jù)應(yīng)用開發(fā)和區(qū)塊鏈開發(fā),就有機(jī)會獲得較高的薪資待遇;其二是具備較為豐富的開發(fā)經(jīng)驗(yàn),能夠完成多場景的開發(fā)任務(wù);其三是具備一定的行業(yè)領(lǐng)域知識,行業(yè)知識往往對于應(yīng)用級程序員的薪資待遇有較大的影響,在產(chǎn)業(yè)互聯(lián)網(wǎng)發(fā)展的大背景下,行業(yè)知識的價值將進(jìn)一步得到體現(xiàn)。
我從事互聯(lián)網(wǎng)行業(yè)多年,目前也在帶計(jì)算機(jī)專業(yè)的研究生,主要的研究方向集中在大數(shù)據(jù)和人工智能領(lǐng)域,我會陸續(xù)寫一些關(guān)于互聯(lián)網(wǎng)技術(shù)方面的文章,感興趣的朋友可以關(guān)注我,相信一定會有所收獲。
如果有互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區(qū)留言!
說點(diǎn)實(shí)際的。
第一,對java基礎(chǔ)非常熟悉,多線程,包括concurrent包,線程池,actor、forkjoin模型都要熟悉,知道原理。還有各種基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),list、map等實(shí)現(xiàn)原理。
第二,對常用框架和工具類原理非常熟悉,spring最常問,框架中也是最復(fù)雜的。
第三,對jvm內(nèi)存模型,內(nèi)存結(jié)構(gòu),gc原理非常熟悉,能夠調(diào)優(yōu),使用jstack,jmap之類分析問題。
第四對數(shù)據(jù)庫除了使用,要了解原理,比如innodb的原理,索引、頁、buffer pool、刷盤機(jī)制、鎖、事務(wù)隔離級別。能夠調(diào)優(yōu),分析死鎖。能夠配置讀寫分離,主從。知道binlog,redolog,undolog都干啥的。
第四,對緩存非常了解,當(dāng)然還是除了使用,要知道淘汰原理,比如redis數(shù)據(jù)結(jié)構(gòu)都怎么實(shí)現(xiàn)的,集群怎么實(shí)現(xiàn)的。并且能夠處理熱key和bigkey。
第五對消息隊(duì)列非常了解,一樣會使用,還得知道原理,比如kafka分區(qū),分片,怎么重置offset,為啥它不會丟消息,什么情況消息是順序的,什么情況不是順序的。qos怎么做的。都要會。
第六,對分布式框架和原理要非常了解,比如cap,base都要知道原理,2pc 3pc tcc要能說明白并且知道優(yōu)缺點(diǎn),能用代碼實(shí)現(xiàn)出來。要知道etcd或者zk的原理,會用其sdk。要用過dubbo或spring cloud,要能講出原理。
第七,要熟悉linux操作系統(tǒng),除基本命令,要會寫腳本,sed awk都要會。同時會用top,vmstat等命令分析系統(tǒng)性能。能夠?qū)ο到y(tǒng)進(jìn)行基線加固和性能調(diào)優(yōu)。要理解epoll和select原理,還有零拷貝這樣常用的內(nèi)核層面性能優(yōu)化方案。
第八,熟悉tcp和http協(xié)議。至少把三次握手和四次揮手產(chǎn)生的狀態(tài)都要說的出來。知道滑動窗口,擁塞控制這些原理性東西。然后對http協(xié)議頭要非常了解。同時會抓包分析數(shù)據(jù)。
第九,能夠搭建負(fù)載均衡,四層和七層都要會,同事要知道負(fù)載均衡算法和原理。
第十,要熟悉git,知道m(xù)erge和rebase區(qū)別,要常用rebase。熟悉gitflow。
最后,要有一定的架構(gòu)設(shè)計(jì)思維能力,對領(lǐng)域模型驅(qū)動設(shè)計(jì)有一些認(rèn)識。能夠拆分業(yè)務(wù)需求,選型制定方案。包括形成設(shè)計(jì)文檔。
當(dāng)然還有很多,這些掌握了,20基本沒問題。配合你的實(shí)際經(jīng)驗(yàn),進(jìn)bat并不難。
感謝邀請,本人還在貧困線之下奮斗,脫貧攻堅(jiān)還在繼續(xù)中…
可以獨(dú)立完成一個大項(xiàng)目中的模塊,或者規(guī)模不大的完整項(xiàng)目。
謝謝邀請。
Java什么水平能達(dá)到月薪20k,那這么多錢并不難,首先要技術(shù)好,熟悉Java底層,常用框架,比如spring全家桶,數(shù)據(jù)庫了解oracle,MySQL,postgradesql,還有一些中間件,zk,Kafka,docker,等等一系列的東西,其實(shí)這些東西這個價位不需要了解太深,會用就行,就怕有一些公司面試造航母,進(jìn)去擰螺絲,現(xiàn)在幾乎所有公司都是這樣,有的筆試,機(jī)試,面試,等等,玩的各式各樣,沒一點(diǎn)用,要不要你主要就是看眼緣,這東西是個玄學(xué),我去面試遇見很多面試官問一些奇葩的問題,記得又一次問我SVN的頂層目錄是什么,wqnmglb,當(dāng)時這是第一個問題,沒回答上來,直接掛了。
如果這個價位就滿足了就好好找個公司養(yǎng)老吧,如果不滿足,就繼續(xù)學(xué)習(xí),多看看源碼,吸收一下別人的經(jīng)驗(yàn),也可以學(xué)習(xí)一下別的語言,技多不壓身。今年Java就業(yè)行情不好,最好不要跳槽。
謝謝!
我雖然不是做java的。但是經(jīng)歷過幾次面試之后,對于這個薪資,可以提供一些意見供你參考。
首先,你必須有很好的技術(shù)。扎實(shí)的技術(shù)是做這個行業(yè)的基本條件。身邊有Java的同事,面試的時候經(jīng)常會被慰勞一下,關(guān)于什么框架的代碼,有沒有熟悉框架的源碼?現(xiàn)在很多公司也喜歡面試算法。所以說,面試常問的一些問題在網(wǎng)上搜一下,都清楚。這個要提前準(zhǔn)備好。
其次,你要看你面試的這個行業(yè)的基本水準(zhǔn)是多少?比如一些公司,如果是做算法,剛畢業(yè)的研究生就可以達(dá)到2萬左右。
再次,就要看你的工作經(jīng)歷以及工作年限,以及相關(guān)的工作經(jīng)驗(yàn),當(dāng)然如果你是新人畢業(yè)生的話。可能會參考你所在的學(xué)校學(xué)歷。計(jì)算機(jī)行業(yè)一般工作年限1~3年,3~5年,5~10年,在不同年限,收入的標(biāo)準(zhǔn)也不一樣。過去之前身邊一些朋友了解到。對應(yīng)的吸脂大概是1萬左右,1.5萬左右,2萬左右。
最后,面試不積極,靠的是技術(shù),也要靠一部分運(yùn)氣。如果公司急需要這樣的人才,可能相對要求就會低一點(diǎn),如果公司是有優(yōu)中擇優(yōu),可能要求就更高了。
補(bǔ)充。經(jīng)??匆幌抡衅妇W(wǎng)站,所招聘的相關(guān)崗位所需要的技術(shù),以及薪資待遇,針對性的去提升自己的能力,補(bǔ)充相關(guān)知識,為以后的面試做準(zhǔn)備,時刻準(zhǔn)備著,才能抓住機(jī)會。
總結(jié):雖然沒有提供相關(guān)的技術(shù)性信息,但是通過不同方向去分析,希望對你有幫助。只要一樣,是以下幾個方面會影響到自己的薪資待遇。
第一,要有技術(shù),扎實(shí)的技術(shù),
第二。要有一定的學(xué)歷,
第三,要有一定的工作年限,
第四,要有一定的運(yùn)氣。
感謝邀請!
一:常見模式與工具
學(xué)習(xí)Java技術(shù)體系,設(shè)計(jì)模式,流行的框架與組件
——常見的設(shè)計(jì)模式,編碼必備,Spring5,做應(yīng)用必不可少的最新框架,MyBatis,玩數(shù)據(jù)庫必不可少的組件……
二:工程化與工具
工欲善其事必先利其器,不管是小白,還是資深開發(fā),玩Java技術(shù)體系,選擇好的工具,提升開發(fā)效率和團(tuán)隊(duì)協(xié)作效率,是必不可少的:
Maven,項(xiàng)目管理
Jenkins,持續(xù)集成
Sonar,代碼質(zhì)量管理
Git,版本管理
三:分布式架構(gòu)
高并發(fā),高可用,海量數(shù)據(jù),沒有分布式的架構(gòu)知識肯定是玩不轉(zhuǎn)的:
分布式架構(gòu)原理
分布式架構(gòu)策略
分布式中間件
分布式架構(gòu)實(shí)戰(zhàn)
四:微服務(wù)架構(gòu)
業(yè)務(wù)越來越復(fù)雜,服務(wù)分層,微服務(wù)架構(gòu)是架構(gòu)升級的必由之路,Java技術(shù)體系,和微服務(wù)相關(guān)的技術(shù)有哪些呢?
微服務(wù)框架
Spring Cloud
Docker與虛擬化
微服務(wù)架構(gòu)
五:性能優(yōu)化
任何脫離細(xì)節(jié)的ppt架構(gòu)師都是耍流氓,向上能運(yùn)籌帷幄,向下能解決一線性能問題,Java技術(shù)體系,需要了解:
性能指標(biāo)體系
JVM調(diào)優(yōu)
Web調(diào)優(yōu)
DB調(diào)優(yōu)
六:底層知識
從架構(gòu)設(shè)計(jì),到應(yīng)用層調(diào)優(yōu),再深入了解底層原理,扎實(shí)的Java基本功才能讓自己變?yōu)閽叩厣裆?/p>
內(nèi)存模型
并發(fā)模式
線程模型
鎖細(xì)節(jié)
文章中涉及到的技術(shù)點(diǎn),需要清晰大綱圖的可以關(guān)注我,私信【資料】獲取免費(fèi)領(lǐng)取方式!希望我這些分享可以幫助在這個行業(yè)發(fā)展的朋友和童鞋們,在論壇博客等地方少花些時間找資料,把有限的時間,真正花在學(xué)習(xí)上,所以我把這些資料,分享出來。相信對于已經(jīng)工作和遇到技術(shù)瓶頸或者寫博客碼友,在這份資料中一定都有你需要的內(nèi)容。
謝謝邀請,我曾經(jīng)在一家Java培訓(xùn)機(jī)構(gòu)里待過一段時間(當(dāng)講師),目前算是一個架構(gòu)師吧,因此勉強(qiáng)可以回答你這個問題。
在北上廣深這幾大城市中,一般會一些基礎(chǔ)并且有一定的框架知識,掌握J(rèn)avase,ee,my sql好一些的機(jī)構(gòu)可能會同時教一些web項(xiàng)目,ssm,一般的機(jī)構(gòu)可能就直接叫過時的ssh了,學(xué)完這些在自己組建了小團(tuán)隊(duì)做幾個項(xiàng)目就可以偽裝成初級碼農(nóng)找工作了,如果有本科學(xué)歷的話一般工資會在13K 左右,??凭筒灰欢税 ?/p>
以上說的是我在的那家培訓(xùn)機(jī)構(gòu)的就業(yè)薪資,其他機(jī)構(gòu)不敢保證
再次,就要看你的工作經(jīng)歷以及工作年限,以及相關(guān)的工作經(jīng)驗(yàn),計(jì)算機(jī)行業(yè)一般工作年限1~3年,3~5年,5~10年,在不同年限,收入的標(biāo)準(zhǔn)也不一樣。像你說的月薪20K我是在工作了兩年之后都達(dá)到的,當(dāng)時主要是做了幾個項(xiàng)目,有了一些經(jīng)驗(yàn),同時也比較看運(yùn)氣,現(xiàn)在工作比較好找,相信自己吧。
我目前是Java架構(gòu)師,目前月薪在32k左右,工作比較閑,因此經(jīng)常在今日頭條和知乎上發(fā)表文章,感興趣的朋友可以關(guān)注我,有什么問題也可以私信或者在我的文章下方評論等等,相信不會讓你失望的
在一線城市的話,只需要熟練使用主流框架,開發(fā)過多業(yè)務(wù)應(yīng)用項(xiàng)目的中級程序員就可以拿到這樣的薪水。