4年Android開發(fā)3面字節(jié),我上岸了

背景經(jīng)歷

當時我工作近4年炮赦,明顯感覺到了瓶頸期怜跑。 具體來說,感覺自己做過一些技術(shù)設計吠勘、也有過一些產(chǎn)出性芬,但是從技術(shù)深度上感覺不足,到后期時做事也沒有明顯挑戰(zhàn)剧防,完全適應了公司節(jié)奏植锉,說句不好聽的成了老油條,可以每天舒服的混日子(這也有好處峭拘,有時間準備面試)俊庇。這對于個人成長不利,長此以往可能面臨大齡失業(yè)鸡挠。所以我覺得需要痛下決心改變一下現(xiàn)狀辉饱。我定的目標就是進大廠,因為我覺得小廠做到我目前的程度已經(jīng)很難有很多的提升了拣展。

先說說面試的問題

一面部分考題:

  • 插件化彭沼。啟動activity的hook方式。
  • okhttp支持HTTP2备埃?http2的功能有哪些姓惑?tcp方面擁塞控制?tsl的握手和具體的非對稱加密算法按脚。非對稱名稱
  • handler的post(Runnable)如何實現(xiàn)的于毙。callback,runnable辅搬,msg的執(zhí)行優(yōu)先級唯沮。阻塞是怎么實現(xiàn)的?為什么不會阻塞主線程堪遂?
  • 求二叉樹中兩個節(jié)點之間的最大距離烂翰。
  • 206含義,未修改資源是哪個蚤氏,302含義甘耿,301含義
  • 多進程通信問題。binder優(yōu)勢竿滨。aidl生成的java類細節(jié)佳恬。多進程遇到哪些問題捏境?
  • 動態(tài)代理傳入的參數(shù)都有哪些?非接口的類能實現(xiàn)動態(tài)代理嗎毁葱?ASM的原理
  • Application和Activity在Context的繼承樹上有何區(qū)別垫言?二者使用上有何不同?
  • 任意一顆二叉樹倾剿,求最大節(jié)點距離

二面部分考題:

  • 設計一個日志系統(tǒng)筷频。
  • 內(nèi)存泄露的分類。怎么查看內(nèi)存泄露的問題
  • touch事件源碼問題前痘。
  • 組件化的問題凛捏。module和app之間的區(qū)別。moduler通信是如何實現(xiàn)的芹缔。
  • native奔潰的日志采集坯癣,怎么處理?
  • 注解實現(xiàn)一個提示功能:如果int的值大于了3需要提示最欠。

三面部分考題:

  • 介紹下flutter的啟動流程
  • 介紹下flutter與weex的區(qū)別
  • 組件化介紹一下
  • webview中與js通信的手段有哪些示罗?
  • 介紹下flutter_boost的原理
  • 適配器和裝飾模式各自特點和使用場景
  • 視頻編解碼是怎么做的
  • 三色球排序

聊聊我對面試的一些準備和心得

面試從哪些方面去準備呢? 例如芝硬,不太熟悉的技能要不要寫在簡歷上蚜点、要復習哪些Android組件的知識、刷算法題目有沒有用拌阴,可能在面試前你都會仔細考慮這些問題禽额。 下面我就結(jié)合自身的經(jīng)驗和理解,幫你梳理一下關(guān)于簡歷皮官、面試和算法方面需要準備的內(nèi)容,分享一些我的心得體會实辑。

簡歷篇

簡歷在面試過程會起到至關(guān)重要的作用捺氢,我們需要非常注意簡歷的撰寫。

在面試的過程中剪撬,面試官通常會非常關(guān)注你簡歷中的工作經(jīng)歷摄乒、項目介紹、技能特長這三部分的內(nèi)容残黑,如果你面試的公司沒有固定題目的話馍佑,那很多問題都會圍繞你簡歷里這三部分內(nèi)容去問。這里需要注意的一點是相關(guān)技能的書寫梨水,核心思想拭荤,想進大廠的簡歷,要突出自己的特色疫诽,寫得要生動舅世,能從簡歷看出你實力不俗旦委。如果簡歷不過關(guān),很大幾率根本沒有面試機會雏亚。

首先你要讓面試官明確你面試的定級是什么缨硝。 很多時候一個職位對應了很多個職級,在投簡歷的時候罢低,你的簡歷需要讓面試官給你一個比較明確的定級查辩,否則面試過程會比較被動,也會影響面試官對你的判斷网持。

因此這部分的內(nèi)容需要突出自己的特長宜岛,也要寫一些現(xiàn)在公司相對關(guān)心的問題:

  • 比如你對插件化、熱修復翎碑、組件化谬返、性能優(yōu)化等很熟悉,就可以明確的寫上日杈,但如果不是很熟悉那么盡量不要去寫遣铝。
  • 如果你對Android某部分內(nèi)容很熟悉就可以寫得相對詳細一些,比如你對Handler莉擒、Binder機制很熟悉酿炸,就可以寫“熟悉Android常見機制,比如Handler涨冀、Binder機制等”填硕。
  • 而看到你很熟悉這部分內(nèi)容,面試官可能在問問題時一層層深入鹿鳖,因此你肯定需要提前準備一下這部分內(nèi)容如何講解扁眯,基本可以從機制的優(yōu)點、重點翅帜、難點三方面去說明姻檀。

面試篇

對于Android工程師來說,面試開始的時候都會問一些算法和Android涝滴、Java的基礎知識绣版。

針對Java的基礎知識,我列一下 Java 基礎部分要掌握的知識點

  • Java序列化歼疮、注解杂抽,泛型與反射
  • 虛擬機底層原理
  • Android內(nèi)存原理
  • Java高級并發(fā)原理
  • JDK高級動態(tài)代理
  • Java IO操作

對于Android的面試題,大多都是跟系統(tǒng)原理有關(guān)的內(nèi)容韩脏,但也有很多沒有準確答案的問題缩麸,比如四大組件的原理這樣的題目,需要你從一個宏觀的角度去解釋一下四大組件赡矢,或者你也可以拆分開一個個去講解匙睹。

關(guān)于Android面試高頻的問點愚屁,這些你是必須要理解清楚的!如果你在準備面試痕檬,之前我參考的這個**《Android快速面試指南》霎槐,需要可文末里免費領(lǐng)取呢

一些Android經(jīng)常使用到的組件一定要理解清楚,比如:

  • Handler.postDelay的機制
  • 觸摸事件機制
  • 自定義View
  • 如何計算View大小
  • 容器控件如何對子控件進行布局
  • 數(shù)據(jù)庫基本操作
  • Binder機制
  • LMK機制

還有面試官也可能會問一些開源框架的原理梦谜,建議你也要多了解一些:

  • 優(yōu)秀的網(wǎng)絡框架
  • 圖片加載框架
  • 日志記錄框架
  • EventBus
  • AAC框架的原理

還有性能優(yōu)化丘跌,最近幾年公司對性能優(yōu)化關(guān)注很多, 有的人可能做過專門的性能優(yōu)化或者自己開發(fā)過一些工具總結(jié)過一些方法論唁桩,這樣比較好答一些闭树。但是大部分人可能平時都在關(guān)注業(yè)務需求開發(fā),性能優(yōu)化的實戰(zhàn)可能并不是很多荒澡。

面試的后面大多都會從項目入手报辱,你需要在面試之前針對你的項目做詳細的準備。比如面試官會:

  • 讓你介紹一下你的項目
  • 你需要體現(xiàn)出這個項目的難點
  • 你在項目中的貢獻
  • 項目的具體實現(xiàn)等
  • 有可能還會問到一些具體的細節(jié)单山,所以建議是實事求是去講碍现,但一定要對自己的模塊非常清晰。

除了技術(shù)面試以外米奸,有時還有可能會考察一些軟技能昼接,比如面試官會考察你跨部門協(xié)作能力、溝通能力悴晰、時間管理慢睡、任務分配和職業(yè)規(guī)劃等

關(guān)于如何復習

對于復習,首先要對自己做一次自我了解铡溪, 我是通過畫腦圖來進行這個過程的漂辐,我會整體默想一遍大概的知識體系,畫成類似下圖棕硫∷柩模回想每個知識點可能考到的內(nèi)容,記錄下自己模糊的地方饲帅,然后去看網(wǎng)上總結(jié)的面試題,再對每個題目都做一下回答瘤泪。這是一個迭代過程灶泵。

在你預想的問題都可以回答上來的時候,就需要深入挖掘一下技術(shù)細節(jié)和深度了对途, 比如我工作中開發(fā)了一個PLT Hook工具赦邻,這個工具可能是我參考開源項目并封裝修改過來的,但對其中的細節(jié)并沒有很了解实檀,這個時候你就要對這個開源項目所涉及的內(nèi)容做一次系統(tǒng)學習了惶洲。

算法這一塊的話按声, “臨時抱佛腳”對于算法的學習和積累作用不是很大,因此需要我們在平時繁忙的工作中抽出一些時間來復習恬吕,你也可以去LeetCode签则、LintCode上刷刷題。另外铐料,雖然大部分面試的算法題目都是LeetCode上的簡單題目渐裂,但你同樣也需要關(guān)注一些中等和困難難度的經(jīng)典題目。

總結(jié)

沒有涉及太多具體的面試題钠惩,更多側(cè)重的如何準備面試柒凉, 而面試的準備其實是在我們平時工作過程中一點一滴積累的,復習只是作為一種在面試前鞏固知識的手段篓跛。 復習的過程主要是我們對知識點的整理和總結(jié)膝捞,你可以想一下在面試的時候可能會遇到的問題,以及該如何去表達愧沟。

但是我想說蔬咬,雖然“臨時抱佛腳”的準備可能有時有用,但是在短時間內(nèi)靠“突擊”是很難理解到某個知識點更加深度層次的內(nèi)容央渣, 而且知識面的廣度也是需要時間和經(jīng)驗去積累的计盒。所以不管你是否需要面試,在平時工作過程中都需要多思考芽丹、多訓練北启、多總結(jié),在有需要的時候可以厚積薄發(fā)拔第。

更多Amdroid可以查看我的個人介紹9敬濉!蚊俺!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末懈涛,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子泳猬,更是在濱河造成了極大的恐慌批钠,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,402評論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件得封,死亡現(xiàn)場離奇詭異埋心,居然都是意外死亡,警方通過查閱死者的電腦和手機忙上,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評論 3 392
  • 文/潘曉璐 我一進店門拷呆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事茬斧⊙” “怎么了?”我有些...
    開封第一講書人閱讀 162,483評論 0 353
  • 文/不壞的土叔 我叫張陵项秉,是天一觀的道長绣溜。 經(jīng)常有香客問我,道長伙狐,這世上最難降的妖魔是什么涮毫? 我笑而不...
    開封第一講書人閱讀 58,165評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮贷屎,結(jié)果婚禮上罢防,老公的妹妹穿的比我還像新娘。我一直安慰自己唉侄,他們只是感情好咒吐,可當我...
    茶點故事閱讀 67,176評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著属划,像睡著了一般恬叹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上同眯,一...
    開封第一講書人閱讀 51,146評論 1 297
  • 那天绽昼,我揣著相機與錄音,去河邊找鬼须蜗。 笑死硅确,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的明肮。 我是一名探鬼主播菱农,決...
    沈念sama閱讀 40,032評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼柿估!你這毒婦竟也來了循未?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,896評論 0 274
  • 序言:老撾萬榮一對情侶失蹤秫舌,失蹤者是張志新(化名)和其女友劉穎的妖,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體足陨,經(jīng)...
    沈念sama閱讀 45,311評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡嫂粟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,536評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了钠右。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赋元。...
    茶點故事閱讀 39,696評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡忘蟹,死狀恐怖飒房,靈堂內(nèi)的尸體忽然破棺而出搁凸,到底是詐尸還是另有隱情,我是刑警寧澤狠毯,帶...
    沈念sama閱讀 35,413評論 5 343
  • 正文 年R本政府宣布护糖,位于F島的核電站,受9級特大地震影響嚼松,放射性物質(zhì)發(fā)生泄漏嫡良。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,008評論 3 325
  • 文/蒙蒙 一献酗、第九天 我趴在偏房一處隱蔽的房頂上張望寝受。 院中可真熱鬧,春花似錦罕偎、人聲如沸很澄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽甩苛。三九已至,卻和暖如春俏站,著一層夾襖步出監(jiān)牢的瞬間讯蒲,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評論 1 269
  • 我被黑心中介騙來泰國打工肄扎, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留墨林,地道東北人。 一個月前我還...
    沈念sama閱讀 47,698評論 2 368
  • 正文 我出身青樓反浓,卻偏偏與公主長得像萌丈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子雷则,可洞房花燭夜當晚...
    茶點故事閱讀 44,592評論 2 353

推薦閱讀更多精彩內(nèi)容