程式設計師小夥三年月薪30K,他是怎麼做到的?
微信公眾號:慕容千語的架構筆記。歡迎關注一起進步。
目前一線城市的薪資水平在13到40k之間,但是找工作的時候並不僅僅有工作經驗就行了,還需要一定的專業知識。如果你野心更大,想要進阿里美團頭條等等這些大廠的話,那就需要更多的專業知識。那麼,一個三年工作經驗的Java程式設計師應該要具備哪些知識呢?
我整理了之後發現,程式設計師需要懂好多的知識。
一、專案經驗
專案經驗是程式設計師們最重要的財富,也是面試中必問的問題。一般面試官都會藉著專案經驗來考查應聘者的溝通能力和思考能力。三年工作經驗的程式設計師一般都會有兩個以上的專案經驗,但實際我們大部分的情況都是做產品的一個功能或一個模組。雖然我們能很好的完成工作上的要求,但是對於面試這肯定是不夠的。對於面試來說,我們還要完成以下四點。
1、知道你的專案到底是做什麼的,有哪些功能。
2、知道你做的專案在整個專案中所處的位置及作用,並能清晰地闡述模組間的呼叫關係。
3、知道你專案的整體架構和使用到的中介軟體,並對中介軟體的原理有一定的瞭解。
4、能流暢地闡述自己在專案中解決過的比較複雜的問題。
二、Java的基礎知識
技術知識這塊面試還是蠻常見的。不過大多問的比較簡單。這是我羅列的一些我曾被問到的問題,大傢俬下參考一下。
1、棧和佇列的區別
2、介面和抽象類的區別
3、Int和Integer的區別和自動拆箱/裝箱的相關問題
4、常量池相關問題
三、集合框架
集合框架的底層原理,是面試很常見的問題。無論去大公司面試,還是去小公司面試都會問。只不過問深問淺的區別。
1、ArrayList,LinkedList,HashMap,LinkedHashMap,ConcurrentHashMap的底層實現原理
2、1.7版本和1.8版本的HashMap的區別
3、HashMap能不能排序?HashMap的長度為什麼要是2的冪次方?
不過不管怎麼樣,大家去面試的話,都要把上述的問題都儘量弄懂。最低的要求就是把hashmap的底層原理弄懂。
四、多執行緒
1、建立執行緒的幾種方式?Wait,sleep分別是誰的方法,區別?執行緒間的通訊方式?
2、介紹下什麼是死鎖,遇見過死鎖嗎?你是怎麼排查的。(可以透過jps排查)
3、建立執行緒池的幾種方式,執行緒池有什麼好處。
4、執行緒繼承和介面的區別,介面有什麼好處。
5、Synchronized、Lock、ReentrantLock的區別,用法及原理。
6、ThreadLocal的用法和原理
7、Volatile關鍵字的作用和原理
8、樂觀鎖和悲觀鎖
9、對公平鎖,非公平鎖,可重入鎖,自旋鎖,讀寫鎖的理解
10、CAS是什麼及底層原理
11、ArrayBlockingQueue,LinkedBlockingQueue,SynchronousQueue等等堵塞佇列的理解
12、ThreadPoolExecutor的傳入引數及內部工作原理
13、給你一個具體的業務場景,讓你使用ThreadPoolExecutor建立一個適合的執行緒池
14、分散式環境下,怎麼保證執行緒安全
多執行緒一般是高階程式設計師面試中的重點。現在的專案高併發很多,所以面試多執行緒這塊還是挺多的。一般大廠會問得很深。從第十點開始就蠻難的了,大家可以根據自己的情況酌情學習。
五、JVM相關問題
1、JVM記憶體機制
2、介紹下垃圾收集機制,垃圾收集有哪些演算法,各自的特點
3、聊聊GC,談談Major GC,FullGe區別,垃圾收集器有哪些,他們的區別?
4、OutOfMemeryError這個錯誤你遇到過嗎?你是怎麼解決處理的?
5、JVM調優有哪些引數,介紹下,線上環境上,你是怎麼檢視JVM的引數並進行調優的?
6、能不能自己寫一個類叫java.lang.String(類載入的過程,雙親委派模型)
7、JVM這塊一直是高階程式設計師面試中的重點。想拿高薪這塊一定得懂。而且不僅懂,還要有一定的實戰經驗。
六、框架相關問題
1、Spring用了哪些設計模式?Spring注入bean的方式?對SpringIOC和SpringAOP的理解?
2、Spring事務隔離級別和傳播機制?
3、Mybatis的快取機制(一級快取和二級快取),Mybatis的mapper檔案中#和$的區別
4、SpringMVC的流程
5、Spring和SpringBoot的區別?
6、對SpringBoot的理解
7、RPC框架有哪些,他們的區別?
8、Dubbo的使用和理解
9、Spring Cloud的使用和元件,談談你的理解
框架這塊一直都是面試的重點,不過根據我的經驗,框架這裡一般不會問的很深,很少碰到讓你說原始碼,主要還是考察你對框架的設計理解和框架的流程。
七、訊息中介軟體
1、你們公司是如何進行訊息中介軟體的技術選型?
2、如何保證訊息中介軟體的高可用?
3、如何保證訊息中介軟體重複傳送訊息?
4、訊息佇列積壓了大量的訊息,你該怎麼處理?
5、如何保證消費者消費訊息是有順序的?
6、讓你來開發一個訊息中介軟體,你會怎麼架構?
訊息中介軟體還是蠻重要的,無論對面試還是工作來說都是重點。大家一定要對這塊多研究,多瞭解。
八、Redis
1、你們公司為什麼要使用Redis?Redis有幾種資料型別?
2、Redis持久化機制?Redis的過期策略?
3、怎麼保證Redis的高可用?
4、什麼是快取穿透?如何避免?什麼是快取雪崩?如何避免?
5、如何保證快取與資料庫的雙寫一致性?
6、Redis單執行緒模型原理,為什麼能支撐高併發?
7、Redis哨兵架構的理解和底層原理
現在高併發場景越來越多,基本面試必問快取,只是或深或淺而已。比較常問的就是1到5,6、7想挑戰大廠的可以去研究。
九、資料庫
1、工作中你是怎麼最佳化sql的?
2、什麼情況下,索引會失效?
3、資料庫的儲存引擎,比如:MySQL的MyISAM和InnoDB區別?
4、索引的最左原則
5、索引的底層原理
6、你們公司是怎麼進行分庫分表?分庫分表的方案
資料庫的最佳化一般都會問,涉及索引的地方會問的多些,還會問到難度比較高的用庫分表,這裡網上都有方案,一般都是主從庫或Mycat,大家可以去學習瞭解一下。
十、其他
1、分散式事務是怎麼解決的?
2、分散式session方案?
3、設計一個秒殺場景
4、怎麼防止表單多次提交
5、Linux的基本操作命令
6、ElasticSearch的使用和原理
7、Zookeep的使用和原理
這塊主要是問你一些常見的業務場景,比較開放式,還會根據你自己的簡歷來問。比如你的簡歷專案裡面有ElasticSearch,那麼面試官就會問你這些中介軟體的使用和原理。如果你成功地透過了所有的技術面,那麼恭喜你,你離收到offer無限接近了。
只知其概念而不知深入運用是達不到基本要求的,針對以上的知識點我準備了一套實用於所以開發人員的核心知識體系和深入PDF文件(基礎知識-JVM-設計模式-Redis-資料結構與演算法-spring全家桶等全部有深入解析) 關注微信公眾號:慕容千語的架構筆記,獲取資料領取地址。
關注微信公眾號:慕容千語的架構筆記,獲取資料領取地址。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31555445/viewspace-2653534/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一個六年java程式設計師講述:三年達到月薪35k我是怎麼做到的Java程式設計師
- 月薪3000和月薪30000的程式設計師差別是什麼?程式設計師
- 月薪3K與月薪3萬的程式設計師,距離是怎麼拉開的?程式設計師
- 程式設計師薪資一萬,“程式設計師鼓勵師”月薪兩萬,你怎麼看?程式設計師
- 實地探訪:月薪 12K 的進度程式設計師是怎麼工作生活的?程式設計師
- 程式設計師30歲前月薪達不到30K,該何去何從程式設計師
- 程式設計師30歲前,月薪達不到30K,該何去何從?程式設計師
- 月薪過萬的UI設計師都是怎麼設計介面的UI
- 【程式設計師漫畫】猜猜他是誰?程式設計師
- 朋友工作兩年,月薪20k,同樣是程式設計師差距怎麼這麼大?程式設計師
- 作為面試官,講述他是怎麼快速判斷程式設計師能力的?面試程式設計師
- 程式設計師怎麼升職加薪,看看你是否能做到。程式設計師
- 程式設計師5年經驗月薪達不到30K,一切都是瞎扯!程式設計師
- 這是一個月薪 12000 的北京程式設計師的真實生活程式設計師
- 他可能是全球最會說唱的程式設計師程式設計師
- Java工程師如何讓自己月薪30kJava工程師
- 月薪20k的web前端開發程式設計師,他們都會的這6招Web前端程式設計師
- 【1024程式設計師節】程式設計師,你學程式設計的初衷是什麼?程式設計師
- 程式設計師的悲哀是什麼?程式設計師
- 大家是怎麼程式設計的程式設計
- CSDN月薪35K的Java程式設計師是怎樣煉成的?(漲薪必備技能)Java程式設計師
- 程式設計師小夥曬12萬年終獎:高薪背後皆是玩命付出程式設計師高薪
- 不要問程式設計師什麼是“物件”,也不要給他介紹“物件”程式設計師物件
- 月薪8K與月薪3W的程式設計師,差在哪裡?程式設計師
- 月薪8k 和 月薪38K的程式設計師差距在哪裡?程式設計師
- 程式設計師你是怎麼繪製架構圖?程式設計師架構
- 做了三年還覺得自己是菜鳥程式設計師程式設計師
- 程式設計師是怎麼存檔並管理檔案版本的?程式設計師
- appium 怎麼做到小程式輸入密碼APP密碼
- 小程式的ui應該怎麼設計?UI
- 很多程式設計師程式設計時都戴耳機?他們在聽什麼程式設計師
- react設計--他怎麼知道是類元件還是函式元件React元件函式
- 漫畫 | 程式設計師的悲哀是什麼?程式設計師
- 程式設計師口述:我是如何工作三年後跳槽到美團的?程式設計師
- 22 歲畢業做程式設計師,他們 50 歲時的人生軌跡是怎樣的?程式設計師
- 幽默:當程式設計師不想解釋他們做了什麼程式設計師
- 程式設計師到底是幹什麼的?請不要再黑程式設計師了程式設計師
- 螞蟻金服月薪35K的Java程式設計師是怎樣煉成的?(漲薪必備技能)Java程式設計師