09.06 阿里巴巴Java開發工程師面試總結

阿里巴巴Java開發工程師面試總結

通過朋友內推拿到阿里的提前批面試,剛發送簡歷,當天晚上九點多就拿到內推郵件,點擊,讓我完善簡歷,然後就收到了在線測試跟編程測試,一個是性格,文字,圖形測試,一個是編程測試,做完以後的第三天下午,就收到杭州打來的第一個電話,第二天晚上第二個,然後隔一週週一下午第三個,再隔一週週二下午,北京打來第四個,後來就最是最後樓主發現已回絕。

我會把每一面的情況大概總結下,具體的面試問題會留在最後,然後針對性的分析,一輪輪的寫問答太麻煩了,我也不記得每一輪問的具體問題了,只是在第三面時開始有針對性的回憶之前的提問,然後有些問題也是重複的,所以我就不在一輪輪複述了,而是一起做一個總結。


面經

第一面

第一天下午三點左右,接到電話,剛好在教研室自習,一個杭州打來的電話,面試官簡單說明來由,就問我是否方便麵試,我說可以,然後讓我先自我介紹,說實話,阿里是我正式接到的第一個面試,在此之前還沒有面試過,所以根本沒有準備,然後我就簡單的介紹了下自己,把項目提了一下,果然面試官會針對他感興趣的東西問,問了我中興算法大賽的情況,然後我的項目也大概問下,但都只是簡單的說明了一下整個思路,並未深入,然後幾個java基礎問題,最後30分鐘左右,面試官就說,那今天就到這裡了,結束了第一面。

相對於第一面,感覺更多的是寬泛的瞭解java知識面,我還是比較幸運的,所問的幾個問題我都大概的都知道一些,雖然回答的並不是很好,所以每一次面試下來,自己都做了記錄,再學習。

第二面

第二面來的很快,第二天晚上八點多接到的第二個電話,面試官人很好,沒有再自我介紹,直接切入主題,針對我的項目開始具體問,我說做的一個模仿QQ聊天的軟件,他問我你有沒有考慮過性能的問題,如果出現卡頓,你會怎麼解決,我當時說實話,做這個項目純練手的,未考慮到上線測試,我說,我自己做著自己練習的,模仿著功能,自己純手寫的,未考慮到這些。我問面試官性能方面的問題,可以具體一點麼?面試官問我,如果你在傳送文件時卡主,還想發送聊天信息,你怎麼解決,我說那就重新開啟一條線程處理,將聊天與發送文件線程隔離開,互不影響,面試官說好,我知道了,就沒再深入下去。

後面,針對這個問題,我私下找了解決方案,NIO非阻塞編程以及Reactor單線程模型,這個可以去網上搜集資料看看,這些都是解決多線程通信的問題,私下了解到,其實阿里也在用Netty技術,這門技術也是基於Reactor實現的通信技術,它是用來處理大併發,大容量的通信技術,所以阿里其實面的每一個問題,都是有針對性的,在這一點上,我沒有答到點子上,不夠完善,應該是沒有給出面試官想要的答案,但是面試官沒有在這上面為難我,放我進去了三面,還有針對中興算法大賽的提問,因為是自身的項目,所以說的很囉嗦吧,面試官聽完沒有深入追問,可能只是想聽我的表述能力吧,看看我的思路。還有項目就不重複敘述了,與各位項目實在是小巫見大巫了,大家好好準備自己的項目就可以了,肯定是會提問的。


第三面

第三面隔得就比較久了,一個星期才來電話,週一下午五點左右,上來面試官就跟我說,時間比較緊,我們就長話短說,你隨時可以打斷我,我說好的,然後就開始了,這次面試官問了一些基礎,很少,然後開始針對實際問題提問,第一個比較簡單,如果有一組重複數字,我要你找出來,你怎麼解決,這個我當時就說HashSet集合,可以去重複,然後我又問,是要找出重複數字?面試官說是的,然後我就說用HashMap,將數字作為Key,出現次數作為value,然後再遍歷,找出value大於1的Key,就是所要答案了,面試官說好的,然後又問我,有一個比賽,你去商場購物,給你一個購物車,你如何在商場中,在裝滿購物車的情況下實現價值最大,裝不下的就不可以裝,當時我就迷糊了,但是仔細一想,利用動態規劃可以做,貪心算法限制條件下結果不準確,具體的,各位私下看看,網上有很多資料,然後面試官好像挺急的,最後面下來17分鐘,結束了第三面。


第四面

第四面也是隔了一個星期,週二的下午,當時跟學弟在教研室,說真的,苦等真的是勞神,有好幾晚我都沒睡好,我不曉得電話什麼時候打來,每天早九點待在教研室,晚十點多回宿舍,一刻不敢掉以輕心,面試完就開始總結,學習,準備,每天下午就最難熬了,電話一刻不離手,生怕錯過。

廢話說多了,第四個電話北京打來的,開始還不想接,怕騷擾電話,實在是太多了,但是我就是這樣,接一下吧,沒想到對方上來就問是某某某吧,我說是,然後他說是阿里巴巴的,可以面試麼,我說可以,然後他就開始面試了,又一次自我介紹一下,然後問我我研究生的專業課程,學了什麼,怎麼沒有做本專業,而是轉java,然後我簡單說了下,然後針對性的開始提問,聽面試官說話,我就覺得這個面試官不簡單,說話流利而簡練,毫不含糊,應該是個大牛,他說你對分佈式瞭解麼,我說不了解。。完蛋!!

後面你就知道,分佈式對於阿里完全就是靈魂的存在,阿里構架就是基於分佈式構架搭建的框,可惜我知道的太晚,一個菜鳥,對於阿里內部知之甚少,準備的全是基礎,對於新技術的瞭解真的太侷限了,計算機的可能會接觸分佈式,搭建局域網,剛我還在看阿里的技術演化呢,可惜太年輕,本以為接近,卻又深知自身的不足。

問我,你知道消息隊列麼,我又一臉懵,我說我只知道阻塞隊列,在多線程裡用到的,消息隊列沒有用過。完蛋!!

消息隊列也是解決高併發消息傳遞的技術,類似緩存一樣,將消息存入隊列,然後供消費者異步調用,解決阻塞,以及秒殺,採用的也是消息隊列技術。 所以說,很多新技術你不知道,這才是遺憾的地方,知道太晚。

問我,你說一下JAVA8新特性吧,我支支吾吾只知道lambda表達式,簡單複述了一下,其他的知之甚少,用的不多,我又沒能回答出來。完蛋!!


第五面

沒有等來HR面,已回絕。

隔了16天收到的消息,確認了。

這一個多月總算過去了,有點小傷心,可是又慶幸自己歷經四面,說實話,對於我已經算是成功了,一方面,感慨自己的幸運, 一方面,也深知自己的不足,同時,更是激發了我對於這們技術的熱愛,遲到的面經,下午才寫完,後續的具體基礎問題,我會再做總結,先把我的面試過程以及一些大家不知道的,但確實最重要的技術跟大家分享,希望大家繼續完成我未完成的夢。

1、具有1-5工作經驗的,面對目前流行的技術不知從何下手,

需要突破技術瓶頸的可以加。

2、在公司待久了,過得很安逸,

但跳槽時面試碰壁。

需要在短時間內進修、跳槽拿高薪的可以加。

3、如果沒有工作經驗,但基礎非常紮實,對java工作機制,

常用設計思想,常用java開發框架掌握熟練的,可以加。

4、覺得自己很牛B,一般需求都能搞定。

但是所學的知識點沒有系統化,很難在技術領域繼續突破的可以加。

5. 群號:高級架構群 Java進階群:180705916.備註好信息!

6.阿里Java高級大牛直播講解知識點,分享知識,面試指導


分享到:


相關文章: