我的-Android-面试故事---13家面试记录,附面试答案,android星座查询源码
**總結(jié):**這次問(wèn)的問(wèn)題我確實(shí)不怎么吃得住,深入一點(diǎn)可以,再深入一點(diǎn)可能就有點(diǎn)不行了,平時(shí)應(yīng)該往更深的地方思考,就好比 Activity 生命周期大家都知道,但是為什么這么設(shè)計(jì),這么設(shè)計(jì)的好處可能就不是都去思考過(guò)的了。
7.汽車之家(offer)
經(jīng)過(guò)前六次的戰(zhàn)役,現(xiàn)在的我面試的時(shí)候基本可以做到比較淡定了,由于不緊張,思路也慢慢變的清晰,反應(yīng)也恢復(fù)到了平時(shí)的狀態(tài)。
**筆試:**汽車之家是必須筆試的,題目和兩年前大同小異(我剛來(lái)北京的時(shí)候就去面過(guò)~),都是些 Java 基礎(chǔ)和 Android 基礎(chǔ),HashMap 啊,String 之類的。
**一面:**一個(gè)30歲左右的男子,面帶微笑,看著非常的穩(wěn)重。我自我介紹完了后開(kāi)始聊我以前的項(xiàng)目,包括 JSBridge 的一些細(xì)節(jié)、熱修復(fù)的原理、原圖加載原理、項(xiàng)目中的性能優(yōu)化等等,然后介紹了他們的項(xiàng)目,一個(gè)小時(shí)下來(lái)非常愉快,由于馬上12點(diǎn)了于是他給我留了電話,叫我一點(diǎn)半打電話給他然后安排二面。
**二面:**二面我記得是移動(dòng)端的老大,問(wèn)了些 Java 基礎(chǔ)、Http、項(xiàng)目中都做了些什么、為什么土木轉(zhuǎn)計(jì)算機(jī)、離職原因等等。
**三面:**面我的人看著應(yīng)該有40多,一臉祥和,一看就是久經(jīng)沙場(chǎng)的老將,場(chǎng)據(jù)說(shuō)是項(xiàng)目老大,問(wèn)了我的職業(yè)規(guī)劃、對(duì)框架的理解、怎么搭建一個(gè)高解耦的直播框架(解耦各種第三方sdk)。
**四面:**問(wèn)了些生活上工作上的瑣事,當(dāng)然最重要的是砍價(jià),汽車之家工資一般吧,但是福利非常不錯(cuò),工作也輕松,沒(méi)有加班風(fēng)氣。
**總結(jié):**到現(xiàn)在我發(fā)現(xiàn)只要一面表現(xiàn)要了后面的面試就容易了些,但是還是不要掉以輕心,
老大不喜歡的話你直接領(lǐng)導(dǎo)再想要也沒(méi)用,到此我已經(jīng)體會(huì)到了平常心的好處,讓人能從容的交流,這樣才能盡可能多的展現(xiàn)自己。
8.螞蜂窩(未收到 offer)
這家公司是做旅游攻略起家的,我個(gè)人非常喜歡戶外,所以果斷就投遞了,這家公司總監(jiān)非常有意思,后面會(huì)說(shuō)到。
**筆試:**這家公司的筆試題一定要認(rèn)真做,后面面試會(huì)和你聊的,大部分是 Java 基礎(chǔ)和 Android 基礎(chǔ),值得一提有一個(gè)小算法題,是給出了算
法條件和結(jié)果,讓你寫(xiě)這個(gè)算法。大致是這樣的:有一個(gè)數(shù)組 array1 = [x2,x3,x11,x12,x14,x6,x7,x8,x4,x5],array2=[x4,x6,x3,x11],結(jié)果:[x5,x7,x8,x2,x12,x14],大概是這樣的。
**一面:**先是聊面試題,聊了很久。然后開(kāi)始聊自定義 View、View 繪制、事件分發(fā)等等,面試官挺擅長(zhǎng) View 繪制和事件分發(fā),我們從理論聊到了實(shí)踐,從實(shí)踐聊會(huì)理論,然后分析一些系統(tǒng)控件的實(shí)現(xiàn),我就慢慢想,他也不急,就一直等著我。最后請(qǐng)教了他的學(xué)習(xí)方法,我發(fā)現(xiàn)他對(duì)問(wèn)題非常好奇,一旦有疑問(wèn)就會(huì)刨根究底把這個(gè)東西完全吃透,這也是非常值得學(xué)習(xí)的地方。
**二面:**先是性能優(yōu)化、鍵盤(pán)沖突的處理、截取照片中部分圖像的方法原理、項(xiàng)目中負(fù)責(zé)哪些東西等等,想截照片那個(gè)我確實(shí)不知道,但是我分析了下,發(fā)現(xiàn)好像確實(shí)是我說(shuō)的,無(wú)非就是很多像素,然后從數(shù)組中取出相應(yīng)的像素重新生成一張 Bitmap。
**三面:**這次是技術(shù)總監(jiān),由于太晚了,簡(jiǎn)單聊了下給我留了一個(gè)題讓我回去做,做完和他微信視頻聊天辯駁,最后給我送了一份飯來(lái)讓吃了再走吧~,好吧這個(gè)題其實(shí)是一個(gè)概率論的題,他要求弄出理論計(jì)算和 Python 實(shí)驗(yàn)兩種。
結(jié)果就是經(jīng)過(guò)幾次視頻我的答案也不是他想要的,他也提示了我,但是我始終覺(jué)得我的有道理,所以最后就不了了之。
**總結(jié):**這次面試我又發(fā)現(xiàn)一個(gè)現(xiàn)象,東西沒(méi)做過(guò)或者不會(huì)其實(shí)還好,如果你得分析出來(lái)結(jié)果或者大致原理,那么面試官會(huì)非常喜歡,就好比二面的那個(gè)截圖,這個(gè)方法對(duì)我后面的面試幫助很大,當(dāng)然如果想要 offer 還是不要太倔強(qiáng)了,順著總監(jiān)一點(diǎn)應(yīng)該還有點(diǎn)機(jī)會(huì)的,不過(guò)至今我任然堅(jiān)持我看法@@
9.豆果美食(offer)
說(shuō)實(shí)話我是豆果的忠實(shí)用戶,所以就過(guò)段投遞了,豆果氛圍非常好,領(lǐng)導(dǎo)也很 Nice,當(dāng)然人家用戶量也是好幾千萬(wàn)。
**筆試:**沒(méi)有算法,都是些常規(guī)的 Android 基礎(chǔ)和 Java 基礎(chǔ),沒(méi)什么好說(shuō)的。
**一面:**一個(gè)很年輕的小伙,但是實(shí)力很強(qiáng)的,他整個(gè)面試過(guò)程完全沒(méi)按照我簡(jiǎn)歷來(lái)。我們聊得最多的是 Framework 的東西,他比較擅長(zhǎng)這個(gè)。比如 Handler原理、Activity 啟動(dòng)過(guò)程、進(jìn)程啟動(dòng)過(guò)程、Android 系統(tǒng)啟動(dòng)過(guò)程、Java 虛擬機(jī)與 Dalvik 區(qū)別、Dalvik 與 Art 區(qū)別等等,我發(fā)現(xiàn)我們兩個(gè)很像,學(xué)的東西大同小異,所以聊得很來(lái),后來(lái)我們加了好友。
**二面:**簡(jiǎn)單自我介紹了下,然后聊我做的東西,這次也聊了鍵盤(pán)跳躍的處理、原圖處理、性能優(yōu)化等。
**三面:**一上來(lái)問(wèn)了我很多基礎(chǔ)的,View 繪制流程,onMeasure 與 onLayout 的幾個(gè)參數(shù)的分別是干嘛的,接下來(lái)都是聊職業(yè)規(guī)劃個(gè)人興趣還愛(ài)之類的了。
**四面:**這次是 Hr,簡(jiǎn)單了解了下我的情況后開(kāi)始談薪資,說(shuō)實(shí)話待遇我不是很滿意,算下來(lái)年薪和我現(xiàn)在差不多,不過(guò)豆果還是非常有潛力的!
**總結(jié):**這次面試自我表現(xiàn)還行,該說(shuō)的都說(shuō)了,但是薪資談的一般,給自己一個(gè)薪資計(jì)劃的,不然后面會(huì)有很多不愉快的事。
10.阿里高德事業(yè)部(未收到 offer)
這次面試其實(shí)我有點(diǎn)虛,都有點(diǎn)猶豫去不去的,但是我知道不去我肯定會(huì)后悔,所以硬著頭皮就沖過(guò)去了,事實(shí)證明這次面試對(duì)我?guī)椭亲畲蟮?#xff0c;挺佩服面試官的,感覺(jué)比我還清楚自己的優(yōu)缺點(diǎn),只是可惜最后還是未嘗所愿。
**一面:**這次面試的內(nèi)容非常的多,我只能記得大致了,顯示聊我項(xiàng)目中做的東西,聊到 IM 的時(shí)候問(wèn)到了數(shù)據(jù)庫(kù),問(wèn)我怎么封裝的,我說(shuō)沒(méi)怎么封裝,他說(shuō)那你現(xiàn)在想一下,我想了很久只能想到反射,但是問(wèn)題是字段怎么映射呢,后來(lái)他提醒了一種方式,用注解,好吧…,聊到 leakCanary 我大致說(shuō)了原理,當(dāng)我說(shuō)道退出 Activity 時(shí)調(diào)用 dump 的時(shí)候,他問(wèn)了句,那每次都會(huì)調(diào)用 dump嗎,dump很耗時(shí)的,它用什么辦法在沒(méi)內(nèi)存泄漏的不 dump。
問(wèn)網(wǎng)上很多人說(shuō)Handler 內(nèi)存泄漏,為什么會(huì)泄漏,怎么引用的。還有很多小問(wèn)題,像多線程同步的、binder 通信的。到最后他跟我說(shuō)了下來(lái)這邊我將會(huì)負(fù)責(zé)什么,然后問(wèn)我感不感興趣,說(shuō)實(shí)話滿感興趣的,讓后他覺(jué)得我優(yōu)點(diǎn)就是學(xué)習(xí)能力還行,缺點(diǎn)就是很多東西沒(méi)串起來(lái),舉一反三還達(dá)不到。這關(guān)就這樣過(guò)了。
**二面:**據(jù)說(shuō)是他的領(lǐng)導(dǎo),領(lǐng)導(dǎo)應(yīng)該對(duì)我的簡(jiǎn)歷不太滿意,簡(jiǎn)歷聊了下,問(wèn)了下 http 、對(duì)高德了解多少、做地圖的關(guān)鍵點(diǎn)是什么。然后說(shuō)你學(xué)習(xí)能力還行,但不是科班的,經(jīng)驗(yàn)不是很多,應(yīng)該也能做,但是可能會(huì)慢一點(diǎn)點(diǎn),然后就沒(méi)了。
**總結(jié):**通過(guò)這次面試我又自信了很多,相信自己還是可以的,至少慢慢努力還是有用的,畢竟這是高德啊,也為后面去其他大一點(diǎn)的公司面試打下了基礎(chǔ)。然后我還學(xué)會(huì)了在面試中思考不會(huì)的東西,經(jīng)常能在不會(huì)的情況下找到一些線索。一面的面試過(guò)最后也加了我微信,告訴了下我面試沒(méi)通過(guò)的原因,并表示有機(jī)會(huì)再叫我,這點(diǎn)讓我挺感動(dòng)的!很少有面試過(guò)能做到這樣吧。
11.京東商城(offer)
京東總部有點(diǎn)遠(yuǎn)在亦莊那邊,一早就出門了,下午還有其他的面試,導(dǎo)致一天都沒(méi)吃飯,面試也非常考體力啊。
不算Hr總共是四面,前三面主要主要是聊我項(xiàng)目中做的東西和他們項(xiàng)目是做什么的,也會(huì)問(wèn)些 Java 基礎(chǔ)和 Android 基礎(chǔ),第四面是定級(jí),會(huì)跟你聊你學(xué)的最深的一塊兒,其中有個(gè)哥們問(wèn)了個(gè)小算法,10點(diǎn)半開(kāi)始進(jìn)京東大廈,面完差不多是1點(diǎn)。
12.美團(tuán)(未收到 offer)
美團(tuán)對(duì)基礎(chǔ)非常看重,每一面都有一個(gè)小算法題,一二面基本都是聊基礎(chǔ),但是說(shuō)基礎(chǔ)的同時(shí)也不缺深度,感覺(jué)非常不錯(cuò)。
一面: String相關(guān)的問(wèn)了很多、HashMap 的原理、Java 的引用類型、Activity 啟動(dòng)模式、Activity 生命在各種情況下的生命周期、二分查找、單例模式、Handler 機(jī)制、系統(tǒng)中用 Handler 的地方等等等等,看著都是些常見(jiàn)的,但是問(wèn)的非常的細(xì),很多都是平時(shí)容易忽略的東西。面試官人很好,一直告訴我不要緊張,因?yàn)槲乙恢痹诤人?#xff0c;我其實(shí)是非常餓,最后讓等二面的時(shí)候再次囑咐我不要緊張,二面盡量往你會(huì)的方向引導(dǎo),真的很感謝那個(gè)面試官。
**二面:**二面聊的比較多的是 Java 相關(guān)的,基礎(chǔ)是一方面,然后聊到熱修復(fù)的時(shí)候隨便問(wèn)到了我 類加載器與Java 虛擬機(jī)的雙親委托模型,也是有一個(gè)算法,寫(xiě)完后讓我繼續(xù)優(yōu)化這個(gè)算法,我是真優(yōu)化不動(dòng)了,面試官一看就是很耿直的人,告訴我老大今天開(kāi)會(huì)讓我回去等電話,這次我覺(jué)得應(yīng)該不是委婉的拒絕。
**三面:**等了很久,終于等到了 Hr 的電話安排我去三面,三面的面試過(guò)那天剛好在校招,于是我就被帶到校招的地方去了,我覺(jué)得在面試過(guò)看到我簡(jiǎn)歷那一刻開(kāi)始就沒(méi)打算要我了,整個(gè)過(guò)程非常短,基本沒(méi)聊技術(shù),自我介紹環(huán)節(jié)都省略了,簡(jiǎn)單聊了下然后讓我做一個(gè)算法題,我寫(xiě)完后正猶豫,他有收卷的意思,然后就說(shuō)讓回去等,我心里知道肯定沒(méi)戲了…
13陌陌科技(offer)
陌陌的產(chǎn)品我非常喜歡,我以前也是做社交類的東西,所以感覺(jué)蠻適合我的,里面幾個(gè)面試官也很 nice.
**一面:**面試官是優(yōu)化組的組長(zhǎng),跟我聊很多優(yōu)化的東西,我確實(shí)不是專業(yè)的,可以說(shuō)面的一塌糊涂,我感覺(jué)沒(méi)戲了,我一想反正來(lái)了,于是就請(qǐng)教了他很多問(wèn)題,主要是架構(gòu)的,他很耐心的給我講了陌陌的組件化,最后說(shuō)去叫迭代組的來(lái)面我吧。
**二面:**先是 Java 基礎(chǔ)相關(guān)的問(wèn)題,那后聊了我項(xiàng)目中的一些東西,IM 啊、圖片加載啊之類的,很多都記不清了。
**三面:**面試官是 Android 組的老大,我來(lái)聊了很多 jni 相關(guān)的東西,我記得他問(wèn)了一個(gè)問(wèn)題:“我看你項(xiàng)目中用了 GIF圖是吧,GIF圖怎么解析呢?”我不知道,于是我用視頻那套分析了下,然后他表示認(rèn)可,還有好多其實(shí)都不知道,但是高德的面試過(guò)教會(huì)了我多分析多聯(lián)想多能舉一反三。
**四面:**這次是hr面試,談了離職原因,期望薪資,我以為就通過(guò)了呢,沒(méi)想到還有一面,叫我回去等電話安排總監(jiān)給面試。
**五面:**這是一個(gè)看著很年輕的技術(shù)總監(jiān),但技術(shù)應(yīng)該很不錯(cuò)的,我們聊了很多數(shù)據(jù)庫(kù)方便的定西,IM 與 視頻的也不少,大概聊了半個(gè)小時(shí)吧,最后也沒(méi)給答復(fù),讓回去等。
**總結(jié):**這是這次跳槽的最后一次面試,對(duì)自己表現(xiàn)還是挺滿意的,其實(shí)一面真的挺煎熬的,我確實(shí)很多不知道,一面面試官是專業(yè)性能優(yōu)化的,我確實(shí)還查了一點(diǎn),聊架構(gòu)我也一塌糊涂,但是我當(dāng)時(shí)沒(méi)氣餒,雖然暴露的體無(wú)完膚我還是堅(jiān)持把我知道的說(shuō)了,不知道的問(wèn)了,也沒(méi)表現(xiàn)出怯場(chǎng)。
需要掌握的技能點(diǎn)
列下我在面試遇到比較多的。
-
基本算法,其實(shí)基本沒(méi)遇到和難的算法,都是給定一個(gè)實(shí)際場(chǎng)景然后寫(xiě)個(gè)小算法,比如叫把 String 的 IP 地址轉(zhuǎn)成 int 值,IP 是 192.168.0.1 這種,對(duì)應(yīng) int 值是 19216801。
-
Java 中常用類的源碼,如 常用的數(shù)據(jù)結(jié)構(gòu)(HashMap問(wèn)的比較多)、String、StringBuilder
等等,可以看看 《Thinking in Java 》 -
Java 虛擬機(jī)、Art、Dalvik 他們的區(qū)別。
-
性能優(yōu)化,這是個(gè)很大的點(diǎn),但是基本是必問(wèn)的。
-
Java GC 原理、GC Root 的概念、Java 引用類型。
-
Android 的基礎(chǔ)知識(shí),強(qiáng)烈建議理解性的閱讀《Android 藝術(shù)探討》,很多問(wèn)題的答案都可以在這本書(shū)上找到,像 View 繪制流程、事件分發(fā)流程、Handler 機(jī)制、IntentService、HandlerThread 這些可以邊看邊跟源碼邊做筆記。
-
多線程中,線程安全。
-
線程池,需要理解里面各種參數(shù)的含義,適用場(chǎng)景。
-
進(jìn)程間通信、線程間通信。
-
JSBridge 相關(guān)的東西。
-
自己在項(xiàng)目中用到的東西,既然寫(xiě)在簡(jiǎn)歷上了就要知道它的原理,越清楚越好。
面試總結(jié)
總共這次面試,我個(gè)人總結(jié)了幾點(diǎn)。
-
我個(gè)人認(rèn)為簡(jiǎn)歷不要亂投,只投遞喜歡的公司和職位,不然只會(huì)浪費(fèi)時(shí)間。
-
不管面對(duì)什么樣的人,千萬(wàn)不要怯場(chǎng),不然根本沒(méi)法表現(xiàn)出自己水平,既然讓你來(lái)面試了,說(shuō)明簡(jiǎn)歷還是有過(guò)人之處。
-
把基礎(chǔ)打牢固,平時(shí)開(kāi)發(fā)中多總結(jié),多想想為什么。
-
不要放棄每一次面試機(jī)會(huì)(因?yàn)槟阃哆f肯定是因?yàn)橄矚g),我中間有好幾次都不想去,但是理智告訴我必須求不然會(huì)后悔。
-
事先了解職位要求。
-
面試過(guò)程中語(yǔ)速慢些,說(shuō)話要有調(diào)理,開(kāi)始的對(duì)白可以預(yù)先準(zhǔn)備好,因?yàn)橐婚_(kāi)始基本都是自我介紹,你可以介紹完自己,又介紹自己公司業(yè)務(wù),隨帶介紹自己做的東西,把你覺(jué)得面試官可能感興趣的放后一點(diǎn)點(diǎn),一般面試官都會(huì)問(wèn)問(wèn)的,然后這可以順帶再繼續(xù)說(shuō)說(shuō)。
-
總結(jié)每次面試,這次問(wèn)到不會(huì),就不能在下次也不會(huì)了,如果面試失敗,要分析失敗的原因。
-
遇到不會(huì)的就說(shuō)不會(huì),但是不能就這么完了,一定要思考,分析問(wèn)題的能力感覺(jué)面試官是非常看重的,你思考過(guò)程中可以把你思路說(shuō)出來(lái),能說(shuō)多少就多少,千萬(wàn)不要不好意思。其實(shí)科學(xué)研究也是猜測(cè)加實(shí)驗(yàn)證明的過(guò)程。這點(diǎn)非常重要的!
-
對(duì)自己做過(guò)的東西一定要非常熟悉,了解實(shí)現(xiàn)的原理,比如做過(guò)熱修復(fù),你肯定需要知道熱修復(fù)原理,做過(guò)大圖瀏覽,肯定要知道內(nèi)存問(wèn)題、分塊加載、矩陣變換。
-
面試前要對(duì)期望薪資做個(gè)評(píng)估,高了其實(shí)你面試ok的話 HR 可以給你砍下,低了吃虧的不只是你自己,HR 也替你著急,因?yàn)榈土说脑捑退憬o了你 offer 很可能你不會(huì)去的,這樣他們就白干一場(chǎng)。合理的要工資既是對(duì)自己的負(fù)責(zé)也是對(duì)招聘公司的尊重。
文末
好了,今天的分享就到這里,如果你對(duì)在面試中遇到的問(wèn)題,或者剛畢業(yè)及工作幾年迷茫不知道該如何準(zhǔn)備面試并突破現(xiàn)狀提升自己,對(duì)于自己的未來(lái)還不夠了解不知道給如何規(guī)劃,可以**【簡(jiǎn)信我】**加一下合作的技術(shù)群。來(lái)看看同行們都是如何突破現(xiàn)狀,怎么學(xué)習(xí)的,來(lái)吸收他們的面試以及工作經(jīng)驗(yàn)完善自己的之后的面試計(jì)劃及職業(yè)規(guī)劃。
這里放上一部分我工作以來(lái)以及參與過(guò)的大大小小的面試收集總結(jié)出來(lái)的相關(guān)的幾十套騰訊、頭條、阿里、美團(tuán)等公司19年的面試專題,其中把技術(shù)點(diǎn)整理成了視頻和PDF(實(shí)際上比預(yù)期多花了不少精力),包含知識(shí)脈絡(luò) + 諸多細(xì)節(jié),由于篇幅有限,這里以圖片的形式給大家展示一部分免費(fèi)分享給大家,主要還是希望大家在如今大環(huán)境不好的情況下面試能夠順利一點(diǎn),希望可以幫助到大家~
還有?高級(jí)架構(gòu)技術(shù)進(jìn)階腦圖、Android開(kāi)發(fā)面試專題資料,高級(jí)進(jìn)階架構(gòu)資料 幫助大家學(xué)習(xí)提升進(jìn)階,也節(jié)省大家在網(wǎng)上搜索資料的時(shí)間來(lái)學(xué)習(xí),也可以分享給身邊好友一起學(xué)習(xí)。
Android學(xué)習(xí)PDF+架構(gòu)視頻+面試文檔+源碼筆記
在如今大環(huán)境不好的情況下面試能夠順利一點(diǎn),希望可以幫助到大家~
還有?高級(jí)架構(gòu)技術(shù)進(jìn)階腦圖、Android開(kāi)發(fā)面試專題資料,高級(jí)進(jìn)階架構(gòu)資料 幫助大家學(xué)習(xí)提升進(jìn)階,也節(jié)省大家在網(wǎng)上搜索資料的時(shí)間來(lái)學(xué)習(xí),也可以分享給身邊好友一起學(xué)習(xí)。
Android學(xué)習(xí)PDF+架構(gòu)視頻+面試文檔+源碼筆記
總結(jié)
以上是生活随笔為你收集整理的我的-Android-面试故事---13家面试记录,附面试答案,android星座查询源码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 图片滚动
- 下一篇: shell命令 ffmpeg 批量提取视