我在华为做Android外包的真实经历!吊打面试官系列!
導語
本部分內容是關于Android進階的一些知識總結,涉及到的知識點比較雜,不過都是面試中幾乎常問的知識點,也是加分的點。
關于這部分內容,可能需要有一些具體的項目實踐。在面試的過程中,結合具體自身實踐經歷,才能更加深入透徹的描繪出來。
個人經歷
其實我有好長一段時間沒有正規的面試過了,大約3年的時間里面,我沒有正規地接受過面試。
所以在準備投字節跳動之前,我投了幾個公司做了一下熱身活動。記住,這個時候其實不需要有啥心理包袱。因為本身候選人面試成功的可能性比較低,一個合適的可以面試的人選他們也很樂意看看,而且萬一你確實想換工作,但是心儀的公司面不上,而熱身活動的公司拿到了offer,你也可以考慮考慮去看下。并且這個時候你沒有任何的心理包袱,因為反正你也就是來面試看看的,所以面試時候的發揮可能也會更好點,因此說不定最終拿的offer會比最后想去的那家更好呢?
面試準備
老實說,我自己平常沒事就會看一些面試題,所以我都是直接去面的。
建議大家如果準備面試的話,需要做以下準備:
**背題:**看一看最近的面經文,了解現在公司都在面什么類型的題,準備一些常見題,開背吧!如果一些基礎的開發問題都不會那問題就有點小大了。
**算法:**做一些算法題,leetcode 上面的一二三星就夠了,前端算法很簡單,基本都是初中數學的難度吧。
**項目:**項目回顧,把你做的項目從技術架構到源碼都要做到足夠了解,至少面試的時候不要被面試官問住了。并且要體現出你在工作中的作用,體現出自驅性。(大公司都很看重自驅性)。
**亮點:**準備亮點,回答問題的時候不用全部回答上來,但是在面試的過程中一定要有亮點(不然你就會得到反饋,面試官說你還行,但是沒有過~) 我一般會準備幾個點,每個點都保證可以睡上半小時。另外一定要了解的很深入,并且能夠用自己的話流暢的表達出來!!
**內推:**最好找人內推,成功率會提高一些。
**練手:**先找幾家不太想去的公司(規模差不多)練練手,如果第一次面試就去心儀的公司面試,淘汰率會非常高。
**心態:**心態很重要,面試不過很正常,不證明你不優秀,只是不適合,總結面試經驗,為下一次做準備。
如何回答問題?
怎么把自己會的問題說好,這個很關鍵。
邏輯清晰 一定要邏輯清晰,不然即使你知道這個問題的答案,面試官也不會滿意,如果你邏輯清晰,即使這個答案不會,面試官也會給你加分。
獨特理解 現在的面試題大同小異,那么如何體現出你的優勢就很重要。結合業務以及你自身的知識儲備來講。
深入思考 對每個問題一定要有深入的思考,不然就很難進入大公司了,深度上要有一個拔高才能在面試中獲得好的成績。
流暢表達 面試就是一個表達的過程,一些問題心里明白不行,還要流暢的表述出來,基本上如果面試官覺得你表達的很流暢,當你講到一半就不會再讓你說下去了,證明已經通過了。
刷題當然也是最重要的,畢竟我是有好幾年沒有過正規面試的經歷了,于是問我在阿里的同學要來了一份他們公司P8整理的一系列大廠面試題,刷到天昏地暗,如今我也已經入職了字節跳動,這些面試題對于我來說也沒什么太大的用處,所以在這里無償的分享給大家。
字節跳動面試經歷
字節跳動一面
- 自我介紹
- 介紹下Android的mvc/mvp/mvvm
- view的事件分發機制
- viewGroup 怎么知道view有沒有消費事件
- 寫一個單例模式(解釋單例模式中的sync,雙鎖,volidate)
- 算法題目:
有A和B兩個有序數組(數組元素不重復),給出sum,請找到A和B中所有相加和為sum的序列對(面頭條遇到的)
A:[1,4,5]
B:[3,4,6]
sum=8
output 1,1,2,0 => because A[1]+B[1]=8 /A[2]+B[0]=8 - 內存泄漏有哪些?怎么排查
閑聊
之后就問了我最近看了哪本書,學到了什么,最近還在學的什么技術呢?問了我職業規劃,興趣愛好,還說了說公司的語言選型,我后來問了下對于我的面試表現評價,人家不方便說,又問了新人培養等問題。
字節跳動二面
- 自我介紹
- 你遇到最難的問題是什么
- android的handler機制
- android的anr機制
- android冷啟動優化
- android弱網優化
- android 視頻相關有了解么?
- android長圖片加載怎么實現
- gradle用過哪些
- 最近看什么書?
- 職業規劃是什么?
- 能接受在北京工作?
- 算法題目:排序二叉樹轉有序雙鏈表,要求在原來的樹節點基礎上增加。
字節跳動三面
這個面試官應該是一個總監級別的,說話非常的硬氣,肯定是一個資深大佬,一共面了40多分鐘。常規的面試基礎都沒問,純懟項目和算法了。
- volite的關鍵字,干了什么(什么叫指令重排)
- 生產者消費者(非阻塞式)
- 怎樣獲取當前線程是否是主線程
- 怎樣檢測函數執行是否卡頓
- 常用的對稱加密算法,有什么同
- view分發反向制約的方法
- 兩個線程用不同的對象,怎么養
- 樂觀鎖使用
- hashmap底層原理
- arraylist底層原理
- webview如何做資源緩存
- hashmap擴容
- 一張圖片100*100的圖片在內存中的大小
- 項目里面的難點(如何解決,解決方案是什么)
- 一個app發布一個版本后,發現變卡了,你如何復現?如何得知某個地方變卡,如何得知用戶在某行代碼變卡
- android 動畫機制有哪些?
- lottie的原理
- 直播中的動畫要怎么做?要做成動態的,比如禮物是可以配置的?
- 算法題:找出數組中的k數。k數的定義:比位置位于這個數前面的數字都大,且比位置位于這個數后面的數字都小的數字(數組首尾的數字不用管)(面頭條遇到的)
[4,1,3,2,7,9,8,10,12]
此數組中的k數為7和10
字節跳動四面
HR面,大約35分鐘,主要是問個人職業規劃、薪資待遇,以及對字節跳動的期許等等…
最后
這里附上上述的技術體系圖相關的幾十套騰訊、頭條、阿里、美團等公司2021年的面試題,把技術點整理成了視頻和PDF(實際上比預期多花了不少精力),包含知識脈絡 + 諸多細節,由于篇幅有限,這里以圖片的形式給大家展示一部分。
相信它會給大家帶來很多收獲:
上述高清技術腦圖以及配套的架構技術PDF可以點擊我的騰訊文檔免費獲取
當程序員容易,當一個優秀的程序員是需要不斷學習的,從初級程序員到高級程序員,從初級架構師到資深架構師,或者走向管理,從技術經理到技術總監,每個階段都需要掌握不同的能力。早早確定自己的職業方向,才能在工作和能力提升中甩開同齡人。
- 無論你現在水平怎么樣一定要 持續學習 沒有雞湯,別人看起來的毫不費力,其實費了很大力,這四個字就是我的建議!!!
- 我希望每一個努力生活的IT工程師,都會得到自己想要的,因為我們很辛苦,我們應得的。
當我們在抱怨環境,抱怨懷才不遇的時候,沒有別的原因,一定是你做的還不夠好!
定要 持續學習 沒有雞湯,別人看起來的毫不費力,其實費了很大力,這四個字就是我的建議!!!
- 我希望每一個努力生活的IT工程師,都會得到自己想要的,因為我們很辛苦,我們應得的。
當我們在抱怨環境,抱怨懷才不遇的時候,沒有別的原因,一定是你做的還不夠好!
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的我在华为做Android外包的真实经历!吊打面试官系列!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米和微鲸电视哪个好用
- 下一篇: 患子宫肌瘤想做试管婴儿