聊聊阿里面試的三個層次技能與要求

最近去阿里的菜鳥國際做了一次面試交流,發(fā)現(xiàn)大公司對于面試者的知識結構考核非常嚴謹,可以作為我們日常工作學習的指導。雖然很多人說面試問到的東西在實際工作中很少用到,甚至有「面試造火箭,工作擰螺絲」的說法。但從面試中,其實可以看得出來現(xiàn)在的公司對于面試者的知識體系要求。如果我們能在工作中就按著這樣的要求去不斷提升,那么在面試的時候必然也能游刃有余。
一般來說,阿里的面試會有兩輪的技術電面,分別交叉檢驗你的技術基礎。后面還有兩輪的現(xiàn)場技術面試,主要檢驗你的項目經(jīng)驗。但從知識體系的角度來看,阿里面試對于知識的考核可以分為三個層次:對于基礎知識的考核、對于項目經(jīng)驗的考核、對于項目深度的考核。
基礎知識考核
在這個層次上,主要考核你對 Java 語言本身原理的理解以及各種框架的原理理解。
對于 Java 開發(fā)崗位上來說,這些知識點包括但不限于:
- 集合 HashMap 的原理,與 Hashtable、ConcurrentHashMap 的區(qū)別?
- Java 線程池的核心屬性以及處理流程
- Java 并發(fā)包原理、Synchronized關鍵字、鎖
- 線程的生命周期
- JVM類加載機制
- JVM內存模型
- JVM分代以及垃圾回收機制
- Spring Bean 容器生命周期
- Spring AOP 原理
- Dubbo 請求流程以及原理
- 數(shù)據(jù)庫 SQL 優(yōu)化、數(shù)據(jù)庫索引、索引原理
- ……
上面只是說了很少的一部分而已,如果想查看更多,可以點擊Java面試通關要點了解更多。
看到這么多的知識點,我一下子就懵逼了,這么多得看到什么時候才看得完啊?但后面我想明白了,其實你不需要全部都懂,但需要了解大部分知識點,并且在這大部分知識點中,還需要有部分是了解得非常深入的。如果達到這個水平,基本上都能通過考核。
對于基礎知識的考核多出現(xiàn)在阿里的前兩輪電話面試上。對于這塊,你事前把網(wǎng)上常見的面試題目看一遍,多面試幾次基本上都沒有問題。
項目理解程度
當你成功通過基礎知識的考核之后,你會進入下一關的考驗:項目的理解程度。
面試官首先會讓你選擇一個你最拿手的項目,畫出架構圖,之后的一切問題都從這個架構圖觸發(fā)。當你畫出架構圖之后,你肯定需要解釋清楚每個模塊的作用,每個框架的原理以及與其他框架的區(qū)別。
例如我就用我做過的一個搜索項目作為經(jīng)典項目,與面試官探討。
-
項目中用到了 Kafka 這個框架,那么面試官就會問 Kafka 和 RocketMQ 之間的區(qū)別是什么,它們兩個有什么不同?
-
項目中還用到了 Canal 這個阿里巴巴開源的框架,那么面試官自然會問這個東西是干嘛的,原理是怎樣的?
-
項目中還用到了 Zookeeper 作為協(xié)調者,那么 Zookeeper 在這個項目中的作用是什么,扮演了什么角色?
對于「項目理解程度」的考核會發(fā)生在技術面試的三四輪。在這個層次上,你必須要有一個拿得出手的項目,并且對其中的所有框架以及原理都了如指掌,否則你會被虐慘。
項目思考深度
通過上一輪對于「項目理解程度」的考核后,基本上你對整個項目都會有一個全面的認識,應用層面上的問題基本上不會難倒你了。但在「項目思考深度」的考核上,就不僅僅只是考核應用層面上的問題了。
還是用我做過的一個搜索項目作為例子,其中 Canal 這個開源框架暫時是沒有實現(xiàn)集群這個功能的,那么面試官就問了:
- 你如何去改造這個項目,從而實現(xiàn) Canal 的集群功能?
這個時候,你會發(fā)現(xiàn)你懵逼了,因為你從來沒有去思考過這個問題。你所有的工作內容都是在想如何使用開源框架,而沒有進一步思考這些開源框架好不好,有什么可以改進的地方。
所以,在這一個層次上考核的是你對開源框架的思考深度,這些框架到底好不好,好在哪里,不好在哪里,有什么可以改進的地方。
對于「項目思考深度」的考核同樣發(fā)生在技術面試的三四輪。在這個層次上,你不僅要對項目本身理解足夠深刻,還要跳出項目本身,去思考開源框架本身的問題。
總結
當我們回過頭來總結,你會發(fā)現(xiàn)這三個層次都是層層遞進的,而且逐步深入。雖然這是面試中總結出來的經(jīng)驗,但是這卻是一個很好的學習指引。讀者可以自己自查,看看自己現(xiàn)在是處于哪個層次,這樣在工作中也可以不斷地向更高層次邁進。
對于我來說,我缺乏的是對于項目的思考深度,很多時候都是業(yè)界覺得好,那我就用了。但是作為一個高級開發(fā),甚至是一個即將成為架構師的高級開發(fā)來說,你必須知道為什么要用這些框架?它有什么問題,我們能不能做得更好?只有這樣,我們才能有所成長。
相關文章
阿里大數(shù)據(jù)工程師面試流程與經(jīng)驗總結
這篇文章主要介紹了阿里大數(shù)據(jù)工程師面試流程與經(jīng)驗,總結分析了阿里大數(shù)據(jù)工程師三輪面試的經(jīng)歷與相關問題注意事項,需要的朋友可以參考下2019-11-15- 這篇文章主要介紹了阿里面試必會的20道C++面試題與參考答案,涉及C++指針、面向對象、函數(shù)等相關特性與使用技巧,需要的朋友可以參考下2019-09-26
- 這是一道真真實實的阿里面試題:“請解釋下為什么鹿晗發(fā)布戀情的時候, 微博系統(tǒng)會崩潰,如何解決2019-09-16
9月最新184道阿里、百度、騰訊、頭條Java面試題合集(小結)
這篇文章主要介紹了9月最新184道阿里、百度、騰訊、頭條Java面試題合集,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-09-09- 這篇文章主要介紹了阿里常用Java并發(fā)編程面試試題,總結分析了java并發(fā)編程的概念、原理、常見操作與相關注意事項,需要的朋友可以參考下2019-09-04
- 這篇文章主要介紹了阿里、網(wǎng)易、滴滴共十次前端面試碰到的問題小結,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-25
兩個月面試經(jīng)歷回顧:阿里,攜程,小紅書,美團,網(wǎng)易等等
這篇文章主要介紹了兩個月面試經(jīng)歷回顧:阿里,攜程,小紅書,美團,網(wǎng)易等等,分享給大家經(jīng)驗,有興趣的可以了解一下2019-06-252019 金三銀四:阿里P9架構的Android大廠面試題總結
面試是一道坎,很多人會恐懼面試,即使是工作很多年的老鳥,可能仍存在面試的焦慮。 今天介紹了阿里P9架構的Android大廠面試題總結的相關資料,小編覺得挺不錯的,現(xiàn)在分2019-05-052019年成功入職阿里:阿里的三套Java研發(fā)崗面試題總結
之前過了幾個簡單的簡歷面,所以總結了幾套面試的試題供大家分享。小編覺得挺不錯的,也給大家做個參考。一起跟隨小編過來看看吧2019-04-25阿里余額寶團隊Java4面:G1+二叉樹+線上調優(yōu)+MQ+Redis
這篇文章主要介紹了阿里余額寶團隊Java4面:G1+二叉樹+線上調優(yōu)+MQ+Redis的相關資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-04-12