前言
眼下樓主已經拿到阿里實習offer,一共經歷了5次面試,當中4輪技術面。1輪HR面試。在這里分享一下自己的面試經驗和學習總結。寫這篇面經主要是希望可以幫助很多其它的小伙伴。我本科畢業於中南大學信管專業,真正開始學習Java是在大三下學期。研究生就讀北航的移動雲計算專業。剛開始也是小白,也是一步步成成起來的。希望可以給與我有同樣經歷的親們一個參考。須要提的一點是,你將來是須要靠這個吃飯的。所以請對找工作保持十二分的熱情,並且越早准備越好,擺正心態和位置。那么就開始努力吧!
!
阿里一面
一面是在上午9點多接到支付寶的面試電話的,由於非常期望可以盡快接到阿里的電話。所以非常興奮。電話接通之后還是非常緊張的,畢竟是第一次這種面試。中間面的問題有些記不清了,以下列出了一面問到的問題:
- 自我介紹下自己,不超過3分鍾(實際上我的自我介紹不到一分鍾)
- 你感覺比本科階段自己進步了多少,有哪些進步
- 研究生期間最大的進步是什么
- 你認為你適合從事哪個方向的開發
- synchronized與lock的差別。使用場景。看過synchronized的源代碼沒
- JVM自己主動內存管理,Minor GC與Full GC的觸發機制
- 了解過JVM調優沒。基本思路是什么
- 怎樣設計存儲海量數據的存儲系統
- 緩存的實現原理,設計緩存要注意什么
- 淘寶熱門商品信息在JVM哪個內存區域
- 操作系統的頁式存儲
- volatilekeyword的怎樣保證內存可見性
- happen-before原則
- Lucene全文搜索的原理
- 你認為自己適合哪方面的開發,為什么
- 想去哪里實習,杭州?
- 評價一下我的這次面試表現
- 應該在我的技術棧中添加什么
- 有機會下次面試嗎
一面總結: 一面大概面了50多分鍾,從面試官口中得知他是一個老員工,比我大不了多少,整體上還是聊得蠻投機的。
最后的三個問題是我問面試官的。在回答我是否還有機會下次面試的時候說:競爭非常激烈。只是機會還是有的。
聽到這才松了口氣,在掛完電話后趕緊區官網查看自己的狀態,剛開始出現了結果將在xxx后發布,那叫一個緊張啊。等了幾分鍾后,簡歷狀態顯示在面試中,這才松了口氣。
可以看出一面的問題不是非常難。可是要得到面試官比較高的評價(后面聽我同學說。我的面試表現是A)。還是須要一定的表達能力和對技術比較本質的認識的。假設在回答問題的時候可以做一些適當的擴展。自然會讓面試官對你有不一樣的評價。
我回答問題的遵循一定的步驟:先回答問題本質,在回答詳細細節。最后做一些平時編程中的擴展。這樣,會讓面試官認為你確實是在這個技術上面下過功夫的。
阿里二面
等了將近6天(還以為被刷了呢)最終在第二周的周四接到阿里面試電話,那叫一個激動啊。
趕緊找了一個安靜的地方,准備好后開始正式面試。二面的面試官是一個部門主管,自然還是有點小緊張的。這次面試官上來就直接問,沒有一面的面試官那么好說話,以下是面試過程中的問題:
- 自我介紹下自己,不超過3分鍾(我的自我介紹仍然不超過1分鍾,呵呵了)
- 你說你熟悉並發編程,那么你說說Java鎖有哪些種類。以及差別(果然深度不一樣)
- 怎樣保證內存可見性
- Http請求的過程與原理
- TCP連接的特點
- TCP連接怎樣保證安全可靠的
- 為什么TCP連接須要三次握手,兩次不可以嗎。為什么
- AOP的原理
- 動態代理與cglib實現的差別(這個,醉得非常厲害)
- 那么你說說代理的實現原理唄
- 看過Spring源代碼沒,說說Ioc容器的載入過程吧
- 了解過字節碼的編譯過程嗎(這個還真不知道)
- 可以來杭州實習嗎
- 評價一下我的面試表現
- 有機會下次面試嗎
- 您認為我的技術棧應該補充什么,有哪些方面還須要提高
二面總結: 二面面試官問的問題都比較直接,答案也是知道就知道。不知道就不知道。這些問題一部分是基礎一部分是依據你的專業技能的來提問的。
面完后面試官對我的評價是:中規中矩。有機會下次面試。雖說是中規中矩,但聽到面試官說有機會下次面試就感覺這次面試應該過了。
掛完電話后趕緊登陸查看我的簡歷狀態,剛開始仍然顯示在面試中。可是有一點困惑的是:為什么這次沒有出現結果待發布的頁面呢?又一陣操心,上課也心不在焉,最終在晚上7點多的時候顯示了結果待發布的頁面,然后心跳又開始開速,過了幾分鍾看到最終顯示在面試中才放松一點。
雖說這次面試過了,可是我在思考的是為什么面試官對我的表現是中規中矩。
后面我知道我的回答盡管答到了點子上,可是擴展程度不夠。對一些問題的理解缺乏足夠的實踐經驗。面試官告訴我,有時間可以去研究字節碼的編譯過程。以及JVM調優方面的知識(特別強調這個非常重要)。針對自己的不足,面完后又投入瘋狂的看書寫代碼的生活中。盡管在面試中有一些回答不出來非常正常,可是假設可以做到出乎面試官的意料。也是面試官對你非常重要的加分項。
阿里三面(總監面)
三面與二面隔了5天(不知道是不是由於二面面試官對我的評價是中規中矩的緣故,中間一直操心自己被刷了)。仍然在下午4點多接到的電話,一看顯示來電歸屬地是阿里巴巴集團。興奮得不行,找了一個安靜的地方開始面試。
據說總監面會問項目多一點,所以在等待的這幾天中給項目添加了幾個比較肉的點,好在可以面試官耍耍(如今想來僅僅能說:too young too simple)。
總監剛上來非常不客氣,最尷尬的是總監那邊老感覺有回聲,由於不好意思提就忍了。
以下是三面遇到的問題:
- 自我介紹。不超過3分鍾(這次好像時間更久了,也就2分鍾多點)
- 說一下你對哪個項目比較熟悉
- 為什么做這個項目
- 項目採用了什么架構,數據庫怎樣設計的
- 數據庫由哪些表,為什么有這些表
- 主要有哪些核心模塊,模塊之間怎樣通信的
- session放在哪里
- 怎樣保存會話狀態,有哪些方式、差別怎樣
- 分布式session怎樣管理,你有哪些方案
- 學過數據結構和算法嗎(當然),你說說二分搜索的過程
- 說一下快排的過程,寫一下偽代碼
- 了解哪設計模式。舉例說說在jdk源代碼哪些用到了你說的設計模式
- 你有什么問我嗎(仍然上面三個問題)
三面總結:本以為三面是交叉面,沒想到是阿里的總監面試。
由於詳細的技術問題在前兩輪面試中已經問過了,所以三面后不會有詳細的技術問題,總結來看。對自己做過的項目一定要深入,包含使用使用到的技術原理、為什么要使用這些技術。針對項目,面試官關注的無非以下幾點:
項目中某個比較重要的點是怎樣實現的(須要深入技術的原理)
遇到的最大困難是什么(有哪些)。你怎么解決的?
假設須要擴展某個功能,怎樣減少系統的耦合度
假設針對某個功能進行優化。你會怎么設計和優化
對於寫在簡歷上面的項目,自己對比上面四個問題進行思考,才會在面試中游刃有余。由於不論什么在簡歷中作假的行為,面試官僅僅要詳細問你就露餡了。在聽到面試官說有機會下次面試的時候,心中自然是非常高興的。
掛完電話后區官網查看自己的簡歷狀態,經過幾分鍾的煎熬后最終仍然顯示是面試中才稍稍放松一些。
本以為這次總監面試后直接就是HR面了,奈何在晚上阿里打電話說明天部門總監還須要進行一次面試。讓我做好准備。我也是醉了。不是已經總監面了嗎。
盡管存有疑慮,但無論怎樣還是好好准備。
阿里四面 (總監面)
果然,在第二天下午四點多接到了部門總監的電話,簡單溝通后開始了面試。這次面試感覺是最放松的,沒有什么高深的技術問題,感覺就像和朋友聊天的感覺,真的非常感謝這位面試官。以下是面試中的問到的問題:
- 來個自我介紹唄,不超過3分鍾(這次最終由三分鍾了,⊙﹏⊙b汗)
- 介紹下你最熟悉的項目
- 項目使用了什么架構。亮點是什么
- 平時主要學習什么課程
- 你眼下的研究方向是什么
- 家是哪的
- 喜歡看什么書
- 大概什么時候能來實習呢
- 你有什么想要問我嗎(仍然上面三個問題)
四面總結: 盡管這面比較輕松。也沒有什么詳細的技術問題。但對項目仍然是面試官關注的。后面了解到總監面除了看你的基礎,主要看你的潛力(就是有沒有培養的價值),這個東西看起來挺虛的,可是從你平時的學習中仍然是可以看得出來的。
所以,作為一名開發者。平時對技術的研究也是非常重要的。
在聽到面試官說讓我好好等HR通知的時候可開心了,感覺飯都吃得更香了。
阿里五面(HR面)
在隔了4天左右。最終接到了HR的電話。那叫一個激動啊。感覺離阿里offer已經不遠了。於是振奮精神,聊得還不錯。以下是HR問我的問題:
1. 自我介紹下吧
2. 做了哪些項目
3. 看你在問題中說你在杭州看到非常多商販使用付款二維碼,你對支付寶怎么看
4. 你看吧,每天有那么多人使用支付寶。這些數據假設給你存儲。你會怎么設計呢(不是說HR不問技術問題嗎?不愧是阿里的HR)
5. 為什么想來支付寶實習呢
6. 你身邊同學怎樣評價你、老師呢
7. 假設與同事發生了意見的不一致,你會怎樣解決呢
8. 我什么時候可以得到通知呢
9. 評價下我的面試表現(聽到這個問題,HR竟然笑了。)
10. 阿里怎樣對實習生進行培訓
五面總結: 盡管之前就聽說阿里HR非常犀利,只是我感覺一點都不會啊。難道是我的錯覺?不得不說的是這個HR的聲音真的非常好聽誒。
關於HR面試
事實上早就聽說把面試的最終的錄取結果具有一票否決權,在面完前面的技術面試之后。還是非常操心的。
所以咨詢了師兄以及網上找了阿里HR面試的資料,大概得出下面結論:
- 誠信至上,所以在簡歷中不要存在不論什么虛假信息,企圖通過虛假信息得到面試機會的后果得不償失
- HR更關注你的表達能力、與同事相處的能力以及對工作的態度
- 對自己的是否一個明白的職業規划(前提是首先得對自己有一個清晰的定位)
- 關於待遇的問題(由於面的實習崗位,所以這個沒有提。可是就我而言,能力才是最重要的。能力上來了待遇自然就水漲船高)
關於面試的心態
在自己拿到阿里offer之前,一直都在想一個問題:我究竟該怎樣做才干離阿里更近?一年的成長與思考讓我認清了這點,盡管中間也遇到過非常多坑。但卻真正讓我對自己有了一個清晰的定位,也有了比較明白的目標。正由於如此。我每天所學習的都給我莫大的動力,讓我不斷進步,並最終實現自己的目標。所以迷茫才是最可怕的。僅僅有擺正心態,對找工作保持十二分的熱情,勤奮努力,才干離目標更近一步。
可是有了目標和努力外,不一定就能實現目標。說究竟另一個運氣的成分在里面。僅僅能說你找到心儀的工作概率更大而已。遇到一個好的面試官絕對賺了。這四位阿里的面試官我感覺都挺好的,沒有由於他們資歷深就為難我。所以還是非常感謝這四位技術面試官的。
一點總結
由於本科是非科班出身。也僅僅是接觸過Java而已。在大三的時候對自己的未來的發展道路非常迷茫,不知道何去何從,感覺自己就是一個loser。那會考完研后有幸進入了金蝶實習。也就是那段時間讓我認清了自己的短板,自己欠缺的是什么,那段時間也是我確立自己目標的過程。讀研后瘋狂看書、寫代碼、寫博客、做項目,每天都在對自己進行總結和反思,正是這樣一個不斷的自我反思與努力的過程中,我得到了真正的成長與進步。也是這段經歷讓我可以面對阿里技術面試官的提問應答自如,從而順利拿到阿里的offer。
最后,想送給自己兩句話以鞭策自己:
- 越努力,越幸運!
- 以如今大多數人的努力程度之低。根本輪不到可以拼天賦。