安卓开发面试技能介绍,来一份全面的面试宝典练练手,不吃透都对不起自己
前言
網(wǎng)上有很多對程序員簡歷的一些指導,這里就不重述,大家可以搜下網(wǎng)上其他大神的總結(jié),結(jié)合自身情況修改下。我有幾點建議:
1.盡量不要花哨,程序員和設計師或者產(chǎn)品運營還不一樣,我們的簡歷成功與否決定權(quán)還是在技術(shù)面試官那,而他們看重的是你的項目經(jīng)驗內(nèi)容和技術(shù)等描述。
2.技能描述這塊盡量只寫你懂得而且理解深刻的,可以適當加入一些新技術(shù)或流行框架,不過這塊需要理解,沒來得及看源碼的可以看看大神們對它的總結(jié),網(wǎng)上一大堆。
3.項目經(jīng)驗這塊盡量加入關鍵詞,比如使用了什么技術(shù)、用到哪些設計模式、優(yōu)化數(shù)據(jù)對比、擴展總結(jié)之類的。而非一味地介紹這個項目內(nèi)容(那是產(chǎn)品經(jīng)理的描述),比如性能優(yōu)化這塊,分為UI性能優(yōu)化、內(nèi)存優(yōu)化、數(shù)據(jù)庫優(yōu)化、網(wǎng)絡優(yōu)化、耗電優(yōu)化等等。可以從1.如何發(fā)現(xiàn)問題,2.怎么解決問題,3.解決效果對比,這幾個方面去描述。舉個簡單例子——UI優(yōu)化,可以從 UI出現(xiàn)什么問題(卡頓不流暢),怎么查找問題(手機開發(fā)者權(quán)限>GPU過度繪制 發(fā)現(xiàn)層級問題,TraceView CPU使用情況分析),怎么解決問題(降低層級、自定義View繪圖出現(xiàn)問題等),解決問題后性能再次對比。
一面經(jīng)歷
開始面試,
(1)一來就問我tcp/udp有哪些協(xié)議(就記得http和dns解析,估計是看我專業(yè)是網(wǎng)絡工程的)
(2)弱引用,軟引用
(3)volatile關鍵字(突然不知道怎么回答,然后記起來了跟java內(nèi)存模型相關,就說了一下jmm)
(4)多進程(莫名認為是多線程,說歪了)
(5)什么場景需要用到多進程(回答中說了推送)
(6)為什么推送需要多進程,有什么優(yōu)勢(不知道有什么優(yōu)勢)
(7)hashmap的數(shù)據(jù)結(jié)構(gòu)(回答了維護一個entry數(shù)組,hash沖突,1.8中鏈表會變成紅黑樹,然后面試官沒繼續(xù)深究)
(8)anr分類有哪些,原因(具體不了解,就知道執(zhí)行網(wǎng)絡或者數(shù)據(jù)存儲等耗時操作)
(9)anr定位(不會)
(10)activity生命周期
(11)activity從A打開B的生命周期(答錯)
(12)事件分發(fā)
(13)使用過開發(fā)者選項嗎(就用過顯示過度繪制)
(14)kotlin相關,優(yōu)點(簡歷上寫了kotlin)
(15)kotlin協(xié)程(不會)
(16)mvp(回答不夠發(fā)散,可以從mvc發(fā)散到mvp)
(17)算法題:鏈表有無環(huán)
事件結(jié)果
面試官:大致情況了解了,我們會根據(jù)結(jié)果認真評級的,有通知人事會及時通知的,今天大概就聊到這里了。 我:心態(tài)已崩……
我有話說
上述分享的程序員面試騰訊一面含淚把毒打經(jīng)歷,希望能讓更多知識點薄弱的同學早點去補強。我們很多程序員都有一個大廠夢,但如何針對大廠進行面試準備,很多程序員就顯得手足無措了。本文就根據(jù)自己一些見解談談如何準備面試。
關于筆者:?騰訊 Android 客戶端開發(fā)工程獅一枚,喜歡技術(shù)、熱愛開源。
細節(jié)雜談
之所以是細節(jié)雜談,說實話,是因為真的不知道可以寫什么,網(wǎng)上關于面試的文章很多,大概看了幾篇之后,更不知道寫什么了。而根據(jù)自己的面試經(jīng)驗來看,發(fā)現(xiàn)其實有很多細節(jié),在面試的時候都沒有被好好重視起來。所以,這里針對這些細節(jié)做個總結(jié),也希望可以對你們有所幫助。
1. 準備一個良好的開場白
首先筆者理解的自我介紹的作用是緩解初次交談的尷尬以及過渡開場,然后才是擴展為對候選人的口才、邏輯以及表達能力的判斷。
如果你實在不知道怎么說,即便是把你簡歷上的姓名、年齡、愛好、工作經(jīng)驗復述一遍,至少也是起到了暖場的作用。當然要是能基于此,表現(xiàn)出一定出彩的地方,那自然是再好不過,多花點心思準備是值得的。
PS:最近看到一個有趣的分享,唐僧每次介紹自己:貧僧唐三藏,從東土大唐而來,去往西天拜佛取經(jīng)。其實這幾句話包涵了每人都要問自己的三個問題:我是誰?我從哪里來?我要到哪里去?
2. 謙虛是必要的,因為這是禮節(jié)
很大程度上,面試官還有一個身份就是以后可能要一起共事的同事或者老板,所以切忌不要表現(xiàn)的心高氣傲,尤其在電話面試中,很難在短時間就能了解一個人,你所表現(xiàn)出的態(tài)度就顯得非常重要,如果和面試官產(chǎn)生了爭論,要注意談話技巧,可以在你的觀點前加上我理解的是什么什么…
就連牛頓說他不過是站到了巨人的肩膀上了,所以永遠不要覺得自己有多牛,真正牛的人只會更謙虛。
3. 大招放的好,工作何愁找
嗯,標題起的挺押韻,容筆者小小的驕傲下 😃
筆者在面試中,有時候和候選人聊了很久,覺得候選人基礎知識扎實、項目經(jīng)歷也能娓娓道來,但是就是沒有讓人眼前一亮的東西,而且往往連續(xù)出現(xiàn)好幾個類似的候選人之后,這種情況真的很難抉擇,對于面試官來說,幾個候選人表現(xiàn)的都差不多,你會發(fā)現(xiàn)…舉個不太恰當?shù)谋扔?#xff0c;食之無味,棄之可惜。
所以,如果你有個大招就顯得非常重要,讓你和其他的候選人區(qū)別開來,而對于面試官來說,也會更偏向于你,甚至可以直接鎖定勝局。
何謂大招,首先對于候選人來說,技術(shù)面試所涉及的深度和廣度是很難全部顧及的,加之每個面試官的問題又會多種多樣,所以與其擔心被問到自己不熟悉的領域,不如挑幾個自己的熟悉的技術(shù)點深挖下去,總結(jié)和形成自己的一套理論。
之前看到一句話說的很好,**面試的本質(zhì)不是一問一答,而是亮點展示(放大招)。**所以要學會掌握面試的主動權(quán),把話題盡量往自己擅長的地方引,當然陳述的時候記得一定要簡潔扼要。
筆者當時在準備阿里面試的時候,就花了很多精力把 GitHub 一個優(yōu)秀的開源框架,從設計模式、原理以及細節(jié)都琢磨了個透。
4. 算法題 — 知之為知之,不知為不知
面試中問到算法題,如果不知道就明確表示不知道,切記不要裝做知道,然后不知所云的說了一大推,這樣反而會給面試官留下比較差的印象,面試評價上也會比較難看,很有可能也會影響你后續(xù)的面試。
不用擔心回答不知道,就感覺沒戲了。這里一般有兩種情況:一種確實是對算法要求高的職位,那沒辦法了,只能回去好好加強一下,來日再戰(zhàn)。還有一種情況主要是考察你的綜合能力,你其他方面的能力表現(xiàn)的非常好,可以彌補。不會有影響的。嗯,筆者當時就屬于第二種(強行炫耀)。
算法真的是筆者的一大弱項,之前每次面試被問到算法題的時候,我都很頭疼,不過后來索性想明白了,把更多時間放在自己所擅長的地方了。
5. GitHub — “不只是全球最大的同性交友網(wǎng)站“
因為 GitHub 上的開源項目,筆者多次收到過 Facebook、Twitter、英偉達 (NVDIA) 的面試邀約郵件,盡管只是一封郵件,但是對于筆者來說,自身的能力得到認可還是很開心的。
所以,如果你的 GitHub 主頁足夠漂亮,帶來的價值遠超出你的想象,尤其是對于一無學歷,二無大廠背景的同學來說,就顯得更重要了,一定要利用好這個平臺去展示自己的能力。
6. 還有一些小細節(jié)
-
簡歷遵循 STAR 法則,內(nèi)容才是王道。對于某些大廠來說,都會有自己的招聘系統(tǒng),而你精心打造的酷炫簡歷在導入到后臺后,會變得面目全非。你的簡歷樣式做的再好看也沒用,少在樣式上下功夫,多在內(nèi)容上下功夫。
-
聽到面試官的問題后,先不要急于回答,給自己幾秒的思考時間,多站在面試官的角度去思考這個問題應該怎么答,比如當問到你覺得你最大的優(yōu)勢是什么?有些同學會直接回答熱愛技術(shù)……然后…然后就沒有了。這樣顯然毫無說服力,如果加上一句,經(jīng)常瀏覽國外優(yōu)秀的技術(shù)博客、在 GitHub 參與和貢獻自己的開源力量,是不是就好很多了。
-
**面試結(jié)束后,不要覺得不好意思,或者覺得沒有必要,對面試官說一聲:“謝謝,辛苦您了”。**就我個人經(jīng)驗來說,畢竟大部分負責的面試官都會和你聊比較長的時間,也會盡可能挖掘你的技術(shù)亮點。結(jié)尾給面試官留個好印象,如果沒有通過,至少對你的面試評價上也不會太難看。
最后
今天關于面試的分享就到這里,還是那句話,有些東西你不僅要懂,而且要能夠很好地表達出來,能夠讓面試官認可你的理解,例如Handler機制,這個是面試必問之題。有些晦澀的點,或許它只活在面試當中,實際工作當中你壓根不會用到它,但是你要知道它是什么東西。
最后在這里小編分享一份自己收錄整理上述技術(shù)體系圖相關的幾十套騰訊、頭條、阿里、美團等公司20年的面試題,把技術(shù)點整理成了視頻和PDF(實際上比預期多花了不少精力),包含知識脈絡 + 諸多細節(jié),由于篇幅有限,這里以圖片的形式給大家展示一部分。
還有?高級架構(gòu)技術(shù)進階腦圖、Android開發(fā)面試專題資料,高級進階架構(gòu)資料 幫助大家學習提升進階,也節(jié)省大家在網(wǎng)上搜索資料的時間來學習,也可以分享給身邊好友一起學習。
領取方式:點擊【Android學習PDF+架構(gòu)視頻+面試文檔+源碼筆記】
【Android核心高級技術(shù)PDF文檔,BAT大廠面試真題解析】
【算法合集】
【延伸Android必備知識點】
5618262)]
【算法合集】
[外鏈圖片轉(zhuǎn)存中…(img-3JhghYy3-1620895618265)]
【延伸Android必備知識點】
[外鏈圖片轉(zhuǎn)存中…(img-srpTqKG2-1620895618268)]
總結(jié)
以上是生活随笔為你收集整理的安卓开发面试技能介绍,来一份全面的面试宝典练练手,不吃透都对不起自己的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓开发面试书籍,每个程序员都必须掌握的
- 下一篇: 长恨歌剧情介绍