天天看點

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

前言

教育背景:

16屆國防科技大學軟體工程專業畢業

主修:Android移動應用開發

輔修:JAVA開發,C/C++等(資料庫、jsp、資料結構與算法那些程式設計專業都要學的課程就不一一列舉了)

時間過得飛快,眨眼間又是一年畢業季了,今年情況比較特殊,疫情的影響導緻各行業的工作都不好找。在這種嚴峻的形勢下,怨天尤人,乃庸人做法;學習進階、提高自身核心競争力,才是上上之策!

每個人都擁有大廠夢,我也不例外,學習Android開發的初衷,便是進大廠。在衆多網際網路大廠中,最終選擇了阿裡媽媽。“年輕、活力、富有激情”是我聽到得最多對它的形容詞,是以毅然決然,投遞了履歷。希望自己能夠在這個最大的舞台上施展拳腳。

以下分享這次面試螞蟻金服的面試題,另外還對自己的面試做了一些總結,總結裡含有一些學習方法和資料,需要的朋友可以直接(點選我)無償分享!

螞蟻金服四面斬獲Offer,定級P5

一面(五十分鐘左右)

一面是一個電話面試,下午2點左右特地找了一個地方電話面試,2點準時電話就過來了,守時這方面還是專業的,時間有點遠了,題目大緻如下。。。

1.自我介紹

2.基本學習經曆教育背景。

3.有沒有實習經曆?我回答:有兩家家小公司共7個月的實習經驗。然後會順着往下問為什麼沒有留下,做過哪些項目,學到了什麼等等

4.問到了java 中==和 equals 和 hashCode 的差別(這個題感覺面試必問,好多面經都有這個題)

5.程序和線程的差別

6.什麼是 ANR 如何避免它?

7.點選應用圖示,打開應用的過程

8.activity周期,啟動模式

9.Handler機制

一些比較基礎的東西,對于書本的消化,基本上沒有什麼難度

二面(70分鐘左右吧)

二面是視訊面試,是個周六下午

1、HTTP & HTTPS差別(基本都要問的)

2、socket.accept()函數對應着TCP三向交握中哪一次握手,哪個函數代表連接配接建立完畢,四次揮手的過程?(這個也基本都問)

3、舉例工作中用到的多線程的應用場景,線程同步的問題

4、圖檔加載架構?如何加載100M的圖檔卻不撐爆記憶體?(這題網上我都看吐了)

5、Android 中程序的優先級?

6、自定義View、View 的繪制流程、MotionEvent 是什麼?包含幾種事件?什麼條件下會産生?

7、說下你所知道的設計模式與使用場景

三面

過了整整一周到了隔周五上午,接到了第三面的面試通知,約的是隔周三上午 10:30 。第三面面試官時不時的面帶笑容,給人很輕松的感覺。

1、Looper消息機制,postDelay的Message怎麼處理,Looper中的消息是同步還是異步?什麼情況下會有異步消息

2、對MVC和MVP的了解,Handler的記憶體洩漏問題具體是什麼,解決方案有什麼,空資料的時候Handler的阻塞問題

3、ListView和RecyclerView差別?

4、Handler機制?子線程可以用Handler嗎?

5、HashMap原理

6、你在項目中碰到什麼比較棘手的問題?怎麼解決的?

7、找到一個無序數組中第一次出現最多次數的元素

8、問到framework,線程同步這些。

9、反問環節(一般都會有這個環節,個人建議如下)

問技術面試官:問問技術團隊多少人、技術氛圍怎麼樣的、如果有可能問問他們的技術棧是什麼,圍繞着技術來問

問HR:轉正的考核标準啊,薪資待遇啊,公司現有規模啊、發展情況啊,表現出對這個公司很感興趣就行了

注意一點:考慮好你得目标公司的規模和行業。

小微公司:不看項目随便問,沒有邏輯性,閉了眼睛瞎問,對于這種會就會,不會就不會,别慫,反正也不想去。

稍微大點的廠:一般是圍繞項目去問,然後衍生出一些技術問題來細問,問的比較深的時候别慌,把你的了解說出來,然後說其他的就不知道了,展現出你的思考和應變能力。基本上面試就這些的,剩下的就是盡人事聽天命了,記住,面試不上有時候不是你得問題,很可能是公司其實不急着找人,或者面試官不行。

四面(HR)

1、自我介紹。

2、自身有什麼優勢?什麼劣勢?

3、其他公司的面試體驗怎麼樣?

4、學校參加過哪些活動、組織者or參與者

5、薪資預期,理想的工作模式等等

阿裡巴巴面試題答案:點選

【答案】

即可領取!

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

學習經驗總結

(一)調整好心态

心态是一個人能否成功的關鍵,如果不調整好自己的心态,是很難靜下心來學習的,尤其是現在這麼浮躁的社會,大部分的程式員的現狀就是三點一線,感覺很累,一些大齡的程式員更多的會感到焦慮,而且随着年齡的增長,這種焦慮感會越來越強烈,那麼唯一的解決辦法就是調整好自己的心态,要做到自信、年輕、勤奮。這樣的調整,一方面對自己學習有幫助,另一方面讓自己應對面試更從容,更順利。

(二)時間擠一擠,制定好計劃

一旦下定決心要提升自己,那麼再忙的情況下也要每天擠一擠時間,切記不可“兩天打漁三天曬網”。另外,制定好學習計劃也是很有必要的,有邏輯有條理的複習,先查漏補缺,然後再系統複習,這樣才能夠做到事半功倍,效果才會立竿見影。

(三)不斷學習技術知識,更新自己的知識儲備

對于一名程式員來說,技術知識方面是非常重要的,可以說是重中之重。要面試大廠,自己的知識儲備一定要非常豐富,若缺胳膊少腿,别說在實際工作當中,光是面試這一關就過不了。對于技術方面,首先基礎知識一定要紮實,包括自己方向的語言基礎、計算機基礎、算法以及程式設計等等。

結合自身的一個學習經曆,總結了一套非常系統的複習包,包括思維腦圖、Android基礎知識、JAVA知識點彙總、Android擴充知識點、Android開源庫源碼分析、設計模式彙總、Gradle知識點彙總、常見面試算法題彙總等等。

1、Android基礎知識:

筆記裡的知識點非常齊全,囊括了Activity、資料儲存、螢幕适配、消息機制、線程異步、webview、程序、ipc、資料儲存等大量知識點,每一個知識點都有非常詳細的解析,這本萬能寶典在手,不信還有搞不懂的面試題!

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

2、JAVA知識點彙總:

筆記裡的知識點非常齊全,囊括了JVM、static、并發、Java反射、Spring原理、微服務、異常處理、資料庫、資料結構等大量知識點,每一個知識點都有非常詳細的解析,這本萬能寶典在手,不信還有搞不懂的面試題!

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

3、手撕架構技術篇

該篇内容囊括了以下專題的高頻面試題、實戰文檔以及使用總結。

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

4、 最新大廠面試專題

這個題庫内容是比較多的,除了一些流行的熱門技術面試題,如Kotlin,資料庫,Java虛拟機面試題,數組,Framework ,混合跨平台開發,等

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

5、 實戰電子書

關于實戰,我想每一個做開發的都有話要說,對于小白而言,缺乏實戰經驗是通病,那麼除了在實際工作過程當中,我們如何去更了解實戰方面的内容呢?實際上,我們很有必要去看一些實戰相關的電子書。目前,我手頭上整理到的電子書還算比較全面,HTTP、自定義view、c++、MVP、Android源碼設計模式、Android開發藝術探索、Java并發程式設計的藝術、Android基于Glide的二次封裝、Android記憶體優化——常見記憶體洩露及優化方案、.Java程式設計思想 (第4版)等進階技術都囊括其中。

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

6、Android小白到Android工程師的系統學習視訊

關于視訊這塊,我也是自己搜集了一些,都按照Android學習路線做了一個分類。按照Android學習路線一共有八個子產品,其中視訊都有對應,就是為了幫助大家系統的學習。接下來看一下導圖和對應系統視訊吧!!!

Android進階工程師進階思維導圖

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

對應導圖的Android進階工程師進階系統學習視訊

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

寫在最後

我已經順利拿到了offer,大家也要加油,希望都能找到自己想要的工作!

面試無人問津到手握螞蟻金服、快手等offer,我是如何準備大廠Android面試的?

給大家一些建議

1.遇到問題,不要沒有進行仔細分析,就直接百度和谷歌

2.學習知識的時候,不要沒有自己的思考和了解,死記硬背

3.要記得深入追究一個問題的本質原因

4.一定要有自己知識點總結和梳理

5.學到知識點,沒有很好的實踐,動手能力不夠

6.要自己的學習的方法

7.确定目标和找到有效的學習方法

最後提醒:以上整理的所有PDF,均可以免費分享,有需要的朋友,

直接點選

【 我要成為Android進階工程師 】

加入我們的圈子領取資料,和我們一起學習交流吧!