更新時(shí)間:2019-11-21 11:48:04 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2406次
有人說這只能是大企業(yè)或者互聯(lián)網(wǎng)企業(yè)工程師才能拿到。也許是的,小公司或者非互聯(lián)網(wǎng)企業(yè)拿兩萬的不太可能是碼農(nóng)了,應(yīng)該已經(jīng)轉(zhuǎn)管理。還有區(qū)域問題,這個(gè)不在我的考慮范圍內(nèi),因?yàn)槌吮鄙蠌V深杭,其他地方也很難達(dá)到。
還有人提到這個(gè)水平不止2w,其實(shí)工資是跟面試表現(xiàn)有關(guān)的,也跟其他綜合水平有關(guān),比如你是985,top10,或者研究生學(xué)歷,也或者懂點(diǎn)node,懂點(diǎn)大數(shù)據(jù)等等,或者表達(dá)能力強(qiáng),擊中面試官痛點(diǎn)都會加分。如果你達(dá)到我說的水準(zhǔn),起薪就是2w,有其他優(yōu)秀的表現(xiàn)還會在這個(gè)基礎(chǔ)上加分。
但純JAVA方面待遇是比較吻合的。還有SSH真的不是我要黑,2w水平的面試幾乎很少問SSH的用法,要問也是問架構(gòu)和設(shè)計(jì)原理等。例如mybatis是如何管理session和cache的。spring里面有哪些你熟悉的設(shè)計(jì)模式,你怎么理解和應(yīng)用的,如何在應(yīng)用中透傳參數(shù)等。
書籍介紹
其實(shí)互聯(lián)網(wǎng)相關(guān)的知識去互聯(lián)網(wǎng)公司后很容易接觸,并不是什么難點(diǎn)。我司很多剛來的大學(xué)生在半年內(nèi)都能把一些中間件系統(tǒng)摸的很明白,并不是說有多難,只是接觸少,對未知的東西感到害怕疑惑而已。我在這里可以給那些想學(xué)習(xí)這方面的同學(xué)提供幾本書,這幾本書對互聯(lián)網(wǎng)的知識能很快入門和了解全景。不是廣告。
大型網(wǎng)站技術(shù)架構(gòu)-核心原理與案例分析。@李智慧大牛的書
大型分布式網(wǎng)站架構(gòu)-設(shè)計(jì)與實(shí)踐。作者:陳康賢
大型網(wǎng)站系統(tǒng)與java中間件實(shí)踐。作者:曾憲杰
首先兩萬的月薪在BAT實(shí)在太普遍了,一般是高級工程師和資深工程師的職位。在阿里是p6左右,在百度是t5左右,騰訊是t2-3左右,京東是t3-1,美團(tuán)是p6左右,其他的我不了解。這種級別是他們主要碼農(nóng)層級,加班多,能解決大部分問題,但對系統(tǒng)的整體架構(gòu)能力和深入分析瓶頸的能力還需要培養(yǎng)。
掌握的技能樹主要有三個(gè)方面
第一個(gè)是Java基礎(chǔ)。
比如對集合類,并發(fā)包,IO/NIO,JVM,內(nèi)存模型,泛型,異常,反射,等有深入了解,最好是看過源碼了解底層的設(shè)計(jì)。比如一般面試都會問ConcurrentHashMap,CopyOnWrite,線程池,CAS,AQS,虛擬機(jī)優(yōu)化等知識點(diǎn),因?yàn)檫@些對互聯(lián)網(wǎng)的企業(yè)是絕對重要的。
而且一般人這關(guān)都過不了,還發(fā)鬧騷說這些沒什么用,為什么要面試。舉一例子,在使用線程池時(shí),因?yàn)槭褂昧藷o界隊(duì)列,在遠(yuǎn)程服務(wù)異常情況下導(dǎo)致內(nèi)層飆升,怎么去解決?你要是連線程池都不清楚,你怎么去玩?
再舉一例,由于對ThreadLocal理解出錯(cuò),使用它做線程安全的控制,導(dǎo)致沒能實(shí)現(xiàn)真的線程安全。還有遇到內(nèi)存泄露怎么排插問題,怎么優(yōu)化系統(tǒng)性能。所以作為一個(gè)拿兩萬的JAVA程序員這點(diǎn)基礎(chǔ)是要有的。
第二你需要有全面的互聯(lián)網(wǎng)技術(shù)相關(guān)知識。
從底層說起,你起碼得深入了解mysql,redis,nginx,tomcat,rpc,jms等方面的知識。你要問需要了解到什么程度,我可以給你說個(gè)大慨。首先對于MySQL,你要知道常見的參數(shù)設(shè)置,存儲引擎怎么去選擇,還需要了解常見的索引引擎,知道怎么去選擇。知道怎么去設(shè)計(jì)表,怎么優(yōu)化sql,怎么根據(jù)執(zhí)行計(jì)劃去調(diào)優(yōu)。
高級的你需要去做分庫分表的設(shè)計(jì)和優(yōu)化,一般互聯(lián)網(wǎng)企業(yè)的數(shù)據(jù)庫都是讀寫分離,還會垂直與水平拆分,所以這個(gè)也有經(jīng)驗(yàn)的成分在里面。然后redis幾乎是必須的技能,而nginx和tomcat幾乎都是JAVA互聯(lián)網(wǎng)方面必配。
至于rpc相關(guān)的就多的去,必須各種網(wǎng)絡(luò)協(xié)議,序列化技術(shù),SOA等等,你要有一個(gè)深入的理解。現(xiàn)在應(yīng)用比較廣的rpc框架,在國內(nèi)就是dubbo了,開源的還有springcloud相關(guān)技術(shù)棧,可以自行搜索。
至于jms相關(guān)的起碼得了解原理吧,一般情況下不是專門開發(fā)中間件系統(tǒng)和支撐系統(tǒng)的不需要了解太多細(xì)節(jié),國內(nèi)企業(yè)常用的主要是activeMQ和kafka。你能對我說的都有研究,阿里p7都不是太大問題的。
第三就是編程能力,編程思想,算法能力,架構(gòu)能力。
首先2W程序員對算法的要求我覺得還是比較低,再高級也最多紅黑樹吧,但是排序和查詢的基本算法得會。編程思想是必須的,問你個(gè)AOP和IOC你起碼的清清楚楚,設(shè)計(jì)模式不說每種都用過,但也能了解個(gè)幾種。
編程能力這個(gè)我覺得不好去評價(jià),但是拿一個(gè)2000W用戶根據(jù)姓名年齡排序這種題目也能信手拈來。最后就是架構(gòu)能力,這種不是說要你設(shè)計(jì)個(gè)多牛逼多高并發(fā)的系統(tǒng),起碼讓你做一個(gè)秒殺系統(tǒng),得有一個(gè)明確的思路和方向。
這以上就是我說得2w水準(zhǔn),如果你運(yùn)氣好,面試表現(xiàn)好,3w+也有可能哦。
不管是基礎(chǔ)不牢固沒有開發(fā)經(jīng)驗(yàn)的小白,還是有工作經(jīng)驗(yàn)還想不斷提升自己的開發(fā)者們,對于想在這個(gè)行業(yè)有發(fā)展,并付諸了實(shí)際努力的人,在這樣一個(gè)發(fā)展前景下,未來都是有無限可能的。
但是這個(gè)高速發(fā)展的行業(yè)可想而知競爭也是激烈的,不可避免的存在優(yōu)勝劣汰,如果不努力就會被后來居上。
學(xué)Java當(dāng)然要到多年Java技術(shù)積累的動(dòng)力節(jié)點(diǎn)IT教育,引領(lǐng)行業(yè)的技術(shù),一線技術(shù)專家,多家一線互聯(lián)網(wǎng)就業(yè)合作企業(yè)。技術(shù),求職,高薪,你的所有問題都能一站式解決!
以上就是動(dòng)力節(jié)點(diǎn)java學(xué)院小編針對“北京基礎(chǔ)Java開發(fā)教程,月薪過萬需要什么技術(shù)水平?”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如果對于學(xué)習(xí)Java的學(xué)習(xí)計(jì)劃,怎么學(xué)才有效率,或者學(xué)完如果找工作的問題,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743