金三銀四已經告一段落了,你是否還在尋找沒有「996」的公司,或者你在面試上面摘了跟頭?準備了體體面面的自我介紹,敗在了技術深度上;又或者技術知識背得完徹底全,卻輸在了面試技巧。程序員
小編周圍有些作架構師和作HR的好友,向他們了了解了一下一些近期面試的趣聞和規則,如下整理出十條心得供你們參考。面試
不作任何隨便寫份簡歷就出去面試,掛的機率高達90%以上,除非你特別牛。算法
一樣的一我的,普通的簡歷和優化後的簡歷,面試官對你的定位和問的問題也是不同的。
這個是我親身體驗,我以前拿着一份普通簡歷出去面試,面試官就只能把你當成一個普通的3年經驗的來面,問一些特別基礎的問題。就算你知道不少東西,可是面試官根本不問。
而優化後的簡歷,面試官一看這簡歷寫的這麼牛逼,先隨便問幾個問題,你都能回答不錯。
而後,就直接開始問底層源碼、架構設計等比較open的問題,這樣對你的定位和檔次一下就上去了。數據庫
對於你寫在簡歷上的項目,必定要反覆的梳理。對項目的業務邊界、技術架構必須瞭然於胸,並且用到的技術都保證不能被問倒設計模式
基礎的重要性我就很少說了,可是我想說的是,像集合、線程、volatile、鎖、網絡IO等這些,不要停留到網上博客的那種表面程度。
必需要深刻到源碼級別,這樣才能突出,跟其餘候選人拉開差距。緩存
ACID、事物隔離級別以及原理、索引原理、常見分庫分表姿式等安全
分代、回收算法、垃圾回收器搭配和對比優劣、線上問題排查、類加載等等。
這些東西,最低要求都要流暢的說出來,可是若是要和其餘候選人拉開差距,還要突出亮點。網絡
好比,我以前作過垃圾回收器的調優,從CMS換到G1。數據結構
我把CMS的分代、垃圾回收算法過程這些基本東西說完以後,而後說出CMS有兩大缺點:一個是會產生內存碎片,另外一個是會產生浮動垃圾。
而後就開始說爲何會產生這兩大缺點?由於這兩大缺點會怎麼樣?(致使RT升高);而後換成G1以後有啥優勢?
接着再把那些原理噴一遍,調優以後性能上有多少多少的提高,這在面試官心中檔次一下就上來了,跟其餘候選人拉開了差距。架構
你使用過的框架都要作到了然於胸吧,Spring最基本的IOC、AOP、Spring事務必定得看過吧。
Mybatis、Tomcat經常使用的姿式要知道,Redis常見的部署方案、集羣原理、持久化機制、5種數據類型對應的底層數據結構。
Reactor模型運起色制、常見的緩存問題解決方案。
Dubbo、ZooKeeper的使用姿式和基本原理要知道吧。若是你研究過這種RPC的源碼,不管是Dubbo仍是SpringCloud全家桶,那就更好了,直接說出來,碾壓面試官,讓面試官聽你聊。
若是研究過大數據相關的框架那就更好了,絕對的加分項
好比,我深刻研究過Kafka的底層機制,以前面試螞蟻的時候,直接就問我Kafka的底層:
還有分佈式鎖常見的方案要知道、分佈式事務經常使用的方案都要研究過吧。
好比:面試螞蟻的時候,就問我TCC的機制,直接說出使用姿式,使用場景,使用TCC的優缺點
這個字節跳動面試問的多一點,不過這方面能多掌握點都是好的,不怕一萬就怕萬一。
最後還有一點,就是面試過程當中必定必定要有自信,給面試官一種特別有底氣,作什麼事都沒問題的感受。
以上就是這段時間走來的一些經歷感悟總結,但願對你們有一些做用!
對於現目前我這邊也整理了適合1~5年程序員進階的一些面試真題(含答案)還有些Java進階必備知識架構資源以及一些阿里大牛精講的視頻資源,現免費分享給你們。但願對大家有點幫助。還有學習線路知識腦圖。須要的均可以加入合做Q羣Java進階之路:908676731,免費獲取。