從阿里巴巴面試問題來學習他們的思考
拿到阿里實習offer,經歷了5次面試,其中4輪技術面,1輪HR面試。在這裏分享一下自己的面試經驗和學習心得。希望能夠幫助更多的小夥伴。
我本科畢業於XX大學信管專業,真正開始學習Java是在大三下學期,研究生就讀XX大學的移動雲計算專業。剛開始也是小白,也是一步步成成起來的。需要提的一點是,你將來是需要靠這個喫飯的,所以請對找工作保持十二分的熱情,而且越早準備越好。
阿里一面
一面是在上午9點多接到支付寶的面試電話的,因爲很期望能夠儘快接到阿里的電話,所以非常興奮。電話接通之後還是非常緊張的,畢竟是第一次這樣的面試。
中間面的問題有些記不清了,下面列出了一面問到的問題:
自我介紹下自己,不超過3分鐘(實際上我的自我介紹不到一分鐘)
你感覺比本科階段自己進步了多少,有哪些進步
研究生期間最大的進步是什麼
你覺得你適合從事哪個方向的開發
synchronized與lock的區別,使用場景。看過synchronized的源碼沒
JVM自動內存管理,Minor GC與Full GC的觸發機制
瞭解過JVM調優沒,基本思路是什麼
如何設計存儲海量數據的存儲系統
緩存的實現原理,設計緩存要注意什麼
淘寶熱門商品信息在JVM哪個內存區域
操作系統的頁式存儲
volatile關鍵字的如何保證內存可見性
happen-before原則
Lucene全文搜索的原理
你覺得自己適合哪方面的開發,爲什麼想去哪裏實習,杭州?
阿里二面
等了將近6天(還以爲被刷了呢)終於在第二週的週四接到阿里面試電話,那叫一個激動啊。趕緊找了一個安靜的地方,準備好後開始正式面試。二面的面試官是一個部門主管,自然還是有點小緊張的。這次面試官上來就直接問,沒有一面的面試官那麼好說話。
下面是面試過程中的問題:
自我介紹下自己,不超過3分鐘(我的自我介紹仍然不超過1分鐘)
你說你熟悉併發編程,那麼你說說Java鎖有哪些種類,以及區別(果然深度不一樣)
如何保證內存可見性
Http請求的過程與原理
TCP連接的特點
TCP連接如何保證安全可靠的
爲什麼TCP連接需要三次握手,兩次不可以嗎,爲什麼
AOP的原理
動態代理與cglib實現的區別(這個,醉得很厲害)
那麼你說說代理的實現原理唄
看過Spring源碼沒,說說Ioc容器的加載過程吧
瞭解過字節碼的編譯過程嗎(這個還真不知道)
阿里三面(總監面)
三面與二面隔了5天,找了一個安靜的地方開始電話面試。據說總監面會問項目多一點,所以在等待的這幾天中給項目增加了幾個比較肉的點。總監剛上來非常不客氣,最尷尬的是總監那邊老感覺有回聲,因爲不好意思提就忍了。
下面是三面遇到的問題:
自我介紹,不超過3分鐘(這次好像時間更久了,也就2分鐘多點)
說一下你對哪個項目比較熟悉
爲什麼做這個項目
項目採用了什麼架構,數據庫如何設計的
數據庫由哪些表,爲什麼有這些表
主要有哪些核心模塊,模塊之間如何通信的
session放在哪裏
如何保存會話狀態,有哪些方式、區別如何
分佈式session如何管理,你有哪些方案
學過數據結構和算法嗎(當然),你說說二分搜索的過程
說一下快排的過程,寫一下僞代碼
瞭解哪設計模式,舉例說說在jdk源碼哪些用到了你說的設計模式
你有什麼問我嗎(仍然上面三個問題)
阿里四面(總監面)
果然,在第二天下午四點多接到了部門總監的電話,簡單溝通後開始了面試。這次面試感覺是最放鬆的,沒有什麼高深的技術問題,感覺就像和朋友聊天的感覺,真的很感謝這位面試官。
下面是面試中的問到的問題:
來個自我介紹唄,不超過3分鐘
介紹下你最熟悉的項目
項目使用了什麼架構,亮點是什麼
平時主要學習什麼課程
你目前的研究方向是什麼
家是哪的
喜歡看什麼書
大概什麼時候能來實習呢
阿里五面(HR面)
在隔了4天左右,終於接到了HR的電話,那叫一個激動啊。感覺離阿里offer已經不遠了,於是振奮精神,聊得還不錯。
下面是HR問我的問題:
自我介紹下吧
做了哪些項目
看你在問題中說你在杭州看到很多商販使用付款二維碼,你對支付寶怎麼看
每天有那麼多人使用支付寶,這些數據如果給你存儲,你會怎麼設計呢(不是說HR不問技術問題嗎?不愧是阿里的HR)
爲什麼想來支付寶實習呢
你身邊同學如何評價你、老師呢
如果與同事發生了意見的不一致,你會如何解決呢 ?