感謝Crawley同窗分享本身的面試經歷供廣大同窗參考,在這裏也恭喜Crawley同窗,成功拿下阿里offer。面試
同時也歡迎廣大同窗積極投稿,分享本身的面試經歷、技術成長的感悟。算法
1、初出茅廬,初臨帝都數據庫
2、閉關深造,再臨帝都緩存
3、厚積薄發,初試牛刀網絡
4、逆流而上,大肆收割數據結構
5、回眸再看,全程覆盤架構
去阿里是我一直以來的夢想,今朝獲得實現,這一路來要感謝太多人,也感謝這三年來一直努力的本身,這裏記錄一些心得,但願可以幫助到你們。併發
2015年10月8日,一我的拖着行李踏上了去北京找實習的路,由於基礎太差,屢戰屢敗。
框架
最後好不容易入職了一家算上我共2人的外包公司,作了兩個月,以爲太沒發展,毅然離職回校;分佈式
從北京回來深受打擊,認識到本身是多麼的差,若是在這麼下去畢業就是失業,下定決心閉關學習,不成功不出關。
先去淘寶上花了9.9買了一套視頻,天天除了下午去健身一個小時,其餘時間都在啃視頻,花了2個多月作出了一個博客網站,併成功發佈到網上,當時喜悅的心情如今都銘刻在心
以後就是開始天天把學習的筆記發佈到博客網站上,沒過多久忽然有我的留言說:他們最近正好在招實習生,以爲我還不錯,若是感興趣能夠加他聊聊。
我想聊聊也沒什麼損失,最後聊得還不錯,是一家上市央企,想讓我儘快去北京實習,我以爲也還能夠,收拾了下再次踏上了去帝都的高鐵
去的路上內心只有一句話:天道酬勤,必有迴響,真的是隻要付出努力,必定會有回報收穫
在這家央企實習了差很少半年的時間,畢業直接轉正,過了差很少一年的時間,原先的高級開發和技術經理陸續都離職了。
而後我由於平時表現挺積極,因此領導逐漸把團隊交接給我帶領;
這樣帶了半年團隊,以爲技術上出現了瓶頸,團隊裏沒有人能指點我怎麼繼續走下去,因而產生了跳槽去互聯網的想法,而且一發不可熄滅。
可是由於是在央企,技術跟互聯網仍是有很大區別,因此花了幾個月時間收集了網上全部能搜到的面試題,上千道題,反覆的刷,反覆的理解。
有些題實在不理解,就瘋狂的找書和視頻看,也正是這段時間的積累,把個人基礎和技術寬度打得無比紮實。
由於是傳統企業出身,只拿到了3家互聯網公司的面試邀請,都成功的拿下了offer,其中有一家是TOP5,通過對比offer,最後入職了這家。
入職這家公司後,發現身邊處處都是大神,太多的牛人,太多要學習的東西,在其中就像一塊海綿,瘋狂的吸取所見識到的全部技術、流程、作事方法等。
而後這裏有一個很重要的節點,2018年11月公司組織架構調整,換了新總監,新領導帶來了一批原先人馬,致使發展受到侷限。
因而我又產生了離職的想法,而且開始默默準備。
2019年過完年回來後,開始投簡歷。由於背景還不錯,因此接到了不少的邀請,可是我只面了D輪的4家獨角獸和5家大廠。
除了頭條二面掛在了算法上,基本都到了offer階段,下面簡單介紹下狀況:
如下是此次面試經歷的一些我的總結體會,有些東西是實打實的面試過程當中親身的感悟,在此分享出來,但願能幫到各位:
一、千萬不要裸面
不作任何隨便寫份簡歷就出去面試,掛的機率高達90%以上,除非你特別牛。
二、簡歷書寫,不要以爲簡歷描述清楚就好了
一樣的一我的,普通的簡歷和優化後的簡歷,面試官對你的定位和問的問題也是不同的。
這個是我親身體驗,我以前拿着一份普通簡歷出去面試,面試官就只能把你當成一個普通的3年經驗的來面,問一些特別基礎的問題。就算你知道不少東西,可是面試官根本不問。
而優化後的簡歷,面試官一看這簡歷寫的這麼牛逼,先隨便問幾個問題,你都能回答不錯。
而後,就直接開始問底層源碼、架構設計等比較open的問題,這樣對你的定位和檔次一下就上去了。
三、精心準備2個你作過的項目
對於你寫在簡歷上的項目,必定要反覆的梳理。對項目的業務邊界、技術架構必須瞭然於胸,並且用到的技術都保證不能被問倒
四、Java基礎
基礎的重要性我就很少說了,可是我想說的是,像集合、線程、volatile、鎖、網絡IO等這些,不要停留到網上博客的那種表面程度。
必需要深刻到源碼級別,這樣才能突出,跟其餘候選人拉開差距。
五、數據庫的各類機制
ACID、事物隔離級別以及原理、索引原理、常見分庫分表姿式等
六、JVM裏的各類東西
分代、回收算法、垃圾回收器搭配和對比優劣、線上問題排查、類加載等等。
這些東西,最低要求都要流暢的說出來,可是若是要和其餘候選人拉開差距,還要突出亮點。
好比,我以前作過垃圾回收器的調優,從CMS換到G1。
我把CMS的分代、垃圾回收算法過程這些基本東西說完以後,而後說出CMS有兩大缺點:一個是會產生內存碎片,另外一個是會產生浮動垃圾。
而後就開始說爲何會產生這兩大缺點,由於這兩大缺點致使RT升高,換成G1以後有啥優勢。
接着再把那些原理噴一遍,調優以後性能上有多少多少的提高,這在面試官心中檔次一下就上來了,跟其餘候選人拉開了差距。
七、框架
你使用過的框架都要作到了然於胸吧,Spring最基本的IOC、AOP、Spring事務必定得看過吧。
Mybatis、Tomcat經常使用的姿式要知道,Redis常見的部署方案、集羣原理、持久化機制、5種數據類型對應的底層數據結構。
Reactor模型運起色制、常見的緩存問題解決方案。
Dubbo、ZooKeeper的使用姿式和基本原理要知道吧。若是你研究過這種RPC的源碼,不管是Dubbo仍是SpringCloud全家桶,那就更好了,直接說出來,碾壓面試官,讓面試官聽你聊。
八、分佈式相關的問題
若是研究過大數據相關的框架那就更好了,絕對的加分項。
好比,我深刻研究過Kafka的底層機制,面試螞蟻的時候,直接就問我Kafka的底層:
還有分佈式鎖常見的方案要知道、分佈式事物經常使用的方案都要研究過吧。
好比:面試螞蟻的時候,就問我TCC的機制,直接說出使用姿式,使用場景,使用TCC的優缺點;
九、算法
這個我也不是很精通,只熟悉常見的查找、排序、鏈表、隊列、堆、二叉樹等這些簡單的。
那些動態規劃、01揹包問題之類的我也就知道基本概念,頭條二面就掛在這了。
十、相信本身
最後還有一點,就是面試過程當中必定必定要有自信,給面試官一種特別有底氣,作什麼事都沒問題的感受。
記得當時面58的時候,那個vp說我身上有一種特種兵的氣質,他特別喜歡,哈哈哈,我也不知道那是啥氣質。
以上就是這一路面試走來的一些經歷感悟總結,但願對你們有一些做用!
一大波微服務、分佈式、高併發、高可用的原創系列文章正在路上,
歡迎關注公衆號:石杉的架構筆記
週一至週五早八點半!精品技術文章準時送上!!!
十餘年BAT架構經驗傾囊相授