工作幾年月薪剛過10K?掌握這些技術讓你輕鬆過兩萬!(Java向)

有人說這隻能是大企業或者互聯網企業工程師才能拿到。也許是的,小公司或者非互聯網企業拿兩萬的不太可能是碼農了,應該已經轉管理。還有區域問題,這個不在我的考慮範圍內,因爲除了北上廣深杭,其他地方也很難達到。

還有就是工資是跟面試表現有關的,也跟其他綜合水平有關,比如你是985,top10,或者研究生學歷,也或者懂點node,懂點大數據等等,或者表達能力強,擊中面試官痛點都會加分。如果你達到我說的水準,起薪就是2w,有其他優秀的表現還會在這個基礎上加分。但純JAVA方面待遇是比較吻合的。還有SSH真的不是我要黑,2w水平的面試幾乎很少問SSH的知識,要問也是問架構層次的還有設計模式的。例如mybatis是如何管理session和cache的。spring裏面有哪些你熟悉的設計模式,你怎麼理解和應用的。

其實互聯網相關的知識去互聯網公司後很容易接觸,並不是什麼難點。如果你是在一線業務部門,我說的幾個點幾乎時時伴隨着你,完全不用擔心自己不會。我司很多剛來的大學生在半年內都能把一些中間件系統摸的很明白,並不是說有多難,只是接觸少,對未知的東西感到害怕疑惑而已。我在這裏可以給那些想學習這方面的同學提供幾本書,這幾本書對互聯網的知識能很快入門和了解全景。

  • 大型網站技術架構-核心原理與案例分析。
  • 大型分佈式網站架構-設計與實踐。
  • 大型網站系統與java中間件實踐
  • 然後再推薦一個網站併發編程網 - ifeve.com。這個網站的知識絕對夠你面試一個阿里P7,京東T3-2,騰訊T3-1。

我在這裏給那些想達到這個高度甚至想更高的程序員提供一份進階路線圖,主要針對1到5年及以上工作經驗的Java開發人員,從廣度到深度東西還比較全面的,裏面的技術包涵了Java高併發、微服務、源碼分析、高性能、分佈式等技術,其實這些技術想必大家都接觸過,那麼來詳細看看。(圖片可以保存)

源碼分析

性能調優

分佈式

高性能/高併發

工程化工具

項目實戰

另外兩萬的月薪在BAT實在太普遍了,一般是高級工程師和資深工程師的職位。在阿里是p6左右,在百度是t5左右,騰訊是t2-3左右,京東是t3-1,美團是p6左右,其他的我不瞭解。這種級別是他們主要碼農層級,加班多,能解決大部分問題,但對系統的整體架構能力和深入分析瓶頸的能力還需要培養。

其次掌握的技能樹主要有三個方面:

第一個是基礎

  • 比如對集合類,併發包,類加載,IO/NIO,JVM,內存模型,泛型,異常,反射,等有深入瞭解,最好是看過源碼瞭解底層的設計。比如一般面試都會問ConcurrentHashMap,CopyOnWrite,線程池,CAS,AQS,虛擬機優化等知識點,因爲這些對互聯網的企業是絕對重要的。而且一般人這關都過不了,還發鬧騷說這些沒什麼用,爲什麼要面試。舉一例子,在使用線程池時,因爲使用了無界隊列,在遠程服務異常情況下導致內層飆升,怎麼去解決?你要是連線程池都不清楚,你怎麼去玩?再舉一例,由於對ThreadLocal理解出錯,使用它做線程安全的控制,導致沒能實現真的線程安全。還有遇到內存泄露怎麼排插問題,怎麼優化系統性能。所以作爲一個拿兩萬的JAVA程序員這點基礎是要有的。

第二你需要有全面的互聯網技術相關知識

  • 從底層說起,你起碼得深入瞭解mysql,redis,nginx,tomcat,rpc,jms等方面的知識。你要問需要瞭解到什麼程度,我可以給你說個大慨。首先對於MySQL,你要知道常見的參數設置,存儲引擎怎麼去選擇,還需要了解常見的索引引擎,知道怎麼去選擇。知道怎麼去設計表,怎麼優化sql,怎麼根據執行計劃去調優。高級的你需要去做分庫分表的設計和優化,一般互聯網企業的數據庫都是讀寫分離,還會垂直與水平拆分,所以這個也有經驗的成分在裏面。然後redis幾乎是必須的技能,而nginx和tomcat幾乎都是JAVA互聯網方面必配。至於rpc相關的就多的去,必須各種網絡協議,序列化技術,SOA等等,你要有一個深入的理解。現在應用比較廣的rpc框架,在國內就是dubbo了,開源的還有spring cloud相關技術棧,可以自行搜索。至於jms相關的起碼得了解原理吧,一般情況下不是專門開發中間件系統和支撐系統的不需要了解太多細節,國內企業常用的主要是activeMQ和kafka。你能對我說的都有研究,阿里p7都不是太大問題的。

第三就是編程能力,編程思想,算法能力,架構能力。:

  • 首先2W程序員對算法的要求我覺得還是比較低,再高級也最多紅黑樹吧,但是排序和查詢的基本算法得會。編程思想是必須的,問你個AOP和IOC你起碼的清清楚楚,設計模式不說每種都用過,但也能瞭解個幾種。編程能力這個我覺得不好去評價,但是拿一個2000W用戶根據姓名年齡排序這種題目也能信手拈來。最後就是架構能力,這種不是說要你設計個多牛逼多高併發的系統,起碼讓你做一個秒殺系統,得有一個明確的思路和方向。

這以上就是我說得2w水準,如果你運氣好,面試表現好,3w+也有可能哦

寫在最後:

歡迎大家關注我新開通的公衆號【風平浪靜如碼】,海量Java相關文章,學習資料都會在裏面更新,整理的資料也會放在裏面。

覺得寫的還不錯的就點個贊,加個關注唄!點關注,不迷路,持續更新!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章