這些年,我所經歷的全部面試|寫給正在求職的 Androider

文章篇幅較長,建議耐心食用,相信對你有幫助。碼字不易,若是有誤,歡迎指出。前端

前部分是面試經歷,後部分是附帶的問題筆記/推薦回答/書籍。java

個人微信小號有一組特殊的朋友。他們從 CSDN上看到我以前發佈的《從阿里到網易,一位非985/211本科應屆生的一年求職路》後留下郵箱詢要面試資料的,我在郵箱發送資料以後咱們互相添加微信認識聊上的。android

上上週,他們中有幾個生經過微信找我諮詢了一些找工做的問題,包括面試會問哪些技術,怎麼更好的回答,如何怎麼選擇工做機會等等。和他們溝通交流中能夠明顯感受他們的就業焦慮。一方面擔憂受疫情的影響,心儀的公司縮招或者不招;另外一方面則是本身技術的不自信,擔憂面試不經過。我很能理解他們。程序員

上週,有一個之前在帥張星球認識的朋友,也同在廣州。他由於年前公司融資出現了問題而離開公司,如今也正在找工做。他詢問面試所遇到的技術問題及如何看待及回答這些問題。咱們先後溝通了兩天,針對他的問題我一一給出了文字的回答及參考方案,給了我之前面試準備的知識體系及針對每一個問題用語音詳情地模擬回答了一遍,但願他能收穫一些新的知識及回答技巧。雖然咱們素未謀面,可是我是真的但願他能找到心儀的工做。web

當我今天去上班的路上,看了下手機的掘金,發現我前些天發的 《這些年,我爬過的Android坑|持續更新》 一文收到很多讀者 的點贊,很開心。一方面是本身的文章收到承認,另外一方面是文章內容對讀者有幫助。從 2014/10/31 在 CSDN 平臺 寫博客到 2016年中在 hexo 獨立博客 上記錄本身的工做,已通過了 6 年,大概有 200 多篇,直到前些天有個外國的朋友看到我獨立博客上的一篇文章記錄的問題,發了 gmail 互相討論下了,他表達了 「他找了好久才找到這篇文章記錄的這個方案,很感謝你」。 讓我萌生了 「但願本身之後寫的文章可以更大的幫助到別人」 的想法,因此我纔想在掘金寫一寫技術及經驗文章。面試

本文按照時間軸,從我在校求職到畢業後的面試,列出一些技術點及個人想法,但願夠給疫情下的應屆生及求職者一些參考,同時更加堅決本身心裏的想法,不要放棄! (部份內容從我之前的文章整合,若是已經閱讀過該章節,可跳到畢業後的面試直接看),如下內容我基於時間線,以第一人稱的口吻闡述。算法

應屆坎坷求職路

一個廣州非985/211普通本科生,計算機科學與技術專業。之前總是夢想能考一個厲害一點的學府,學習物理專業(由於初中和高中對物理比較有興趣),無奈高考考得不盡人意。來到了計算機專業,才知道有C語言這玩意。數據庫

  • 2013年大一,專業C語言成績太差,被分配到B班學習。臨近學校工做室(有真實項目鍛鍊)招新,那時候基礎太差,又不肯意作一個loser。正巧同鄉會有一位學長進了該工做室,我向他了解了該工做室的狀況,得知有移動Android開發方向。那年,由於當時用過索尼手機,上面的小遊戲有「Java」標誌,女友喜歡小遊戲,因而打算學東西開發一個小遊戲給她玩。因而努力地啃下了Java基礎便去面試,也很幸運地進了工做室。學完Java回頭反而把C語言知識打通,成績一直居B班首位。別人老說「學習其餘語言前先學好C語言,看來我是一個奇葩。編程

  • 2014年,跟着工做室開始作項目。先後差很少完成了5個Android方向的項目,主作的有3個。這一年,邊學習Java邊學習Android開發設計模式

  • 2015年,春招前。我藉助工做室的項目經驗,製做了簡單的簡歷以後,僞裝成大一屆的師兄去參加學校舉辦的招聘會。面了三家,最後有一家對我印象挺好給了我 offer(感受很罪惡)。可是這三家面試讓我瞭解了我簡歷上的薄弱點,知道了那些知識點我只會用可是原理,那些知識點必須深挖才能在面試上突出本身的能力。因而我到 2015年秋招前都在爲這部分作準備,那時候一心就只想進微信。

從 2015 年春招到2016年春招,一共投了 CVTE,阿里巴巴,騰訊,惟品會,4399,珍優科技,YY,百度,迅雷,京東,酷狗,匯豐,技德,美團,網易。這一年的經歷起起伏伏,心情和體重都有較大的波動。緣由是我被擁抱了變化,打亂了個人方向,可是我又堅持了下來,收穫了本身心儀的 offer。

這裏要畫重點

對於學習計算機的同窗而已,大三這個時期很重要,緣由是不少大廠會提早招聘實習生,此時只要你技術基礎相對較好,學習態度端正積極,藉助本身有實習或者工做室的項目經驗,頗有很大可能經過實習招聘提早進入心儀公司的,而且實習生的轉正概率很大,因此若是大三下學期能夠到大廠實習並爭取轉正,大四就有足夠多充足的時間能夠本身慢慢安排!學習,旅遊,談戀愛!均可以!

若是大學能夠重來,我必定,必定大一就開始努力學習

CVTE實習招聘(第一次)

CVTE是春招中比較快的,也是我面試的第一家企業。

  1. 在線測評:專業+綜合
  2. HR面:華工酒店完成一面HR面,主要問職業規劃還有技術掌握程度。
  3. 技術一面:兩個Android面試官,問了一些項目和Handler機制,佈局優化等,手寫設計模式還有排序算法。
  4. 技術二面:個人天〒_〒,是一位數學家(這裏吐槽下,我從下午2點等到快6點才面試,卻很匆忙安排了個數學家。拖這麼久的緣由是那些實習的HR安排很不當,那時候輪到個人時候恰好的午餐,並且是我一面面試官,因此就讓我去吃飯等會換面試官,結果HR就把我標記成已面試,而中途HR又換了幾回,每次都認爲我面試了,最後拖到6點我真的很疲憊很沒狀態,無奈(╯-╰)/)。主要手寫HTTP請求頭,某些返回碼的含義;數據庫索引底層實現;手寫算法判斷鏈表是否有環;Base64底層實現,直接說出A轉化後的結果。整個面試過程都被壓着問,感受很不友好,由於沒啥狀態,不少東西懂卻頭腦一片空白,居然忘記了A的ASCLL是多少,想和他解釋下Base64的轉化過程被拒絕,要求說出結果不聽分析,我也真是醉了。

結果:在宿舍等了一個晚上,掛了。好揪心好不甘心。因而開始繼續複習,準備騰訊春招和阿里。

阿里內推實習招聘(第一次)

因爲過年在家那段時間,工做室的師兄幫咱們內推了阿里巴巴春招崗位。本身對部分不熟悉就寫了淘寶和UC,後來內推名額滿了,一個研究生師兄幫我內推到yunOS事業部。如今看來,我更推薦學Android的朋友選擇支付寶和淘寶。

  1. 阿里一面:第一次打電話給個人時候我正在等CVTE的第二面,因此和麪試官說等會再面試。第二次打電話給個人時候已經很晚,那時候在地鐵上清不清楚面試官說話,說等會我出地鐵再面試。出地鐵的那一刻好緊張,CVTE的面試瞬間給我拋到九霄以外。具體的面試內容我大體只記得談談負責的項目;爲何會喜歡作安卓;安卓的系統啓動機制;安卓應用的優化還有socket的應用。後來問提問環節問了面試官的工做地點和我面試崗位的工做後,發現是在杭州,請求面試官能不能幫我轉到廣州後,他說能夠。
  2. 阿里二面:大概在一面過了一個星期後打過來,主要面了Java基礎;線程同步;集合機制;安卓項目中用到的技術;還有一些不太記得了,最後談談規劃後發現這個崗位仍是在杭州。因此又請求面試官能不能轉到廣州崗位,他說能夠後結束面試。二面事後,官網發現本身的狀態變成拒絕後從新多了一個簡歷評估的狀態。
  3. 阿里三面:大概距二面過了15天,我原本覺得阿里已經拒了我了。三面面試官打來的時候是我正要去看校辯論賽開場表演賽。剛出門就接到面試官電話,談了一下Java技術和Android技術後以爲我OK,說了是yunOS事業部的,問我有沒有興趣還有之後的職業規劃後。提問環節問了還有沒有面試,面試官說沒有了。官網狀態瞬間變成3面經過。
  4. 阿里四面:在看比勝過程中,接到總監電話,代表了是yunOS事業部是否想參與實習,代表我經過事業部面試,問我家庭狀況,我的性格及其在校活動,職業規劃等,並和我說了入職時間和會有人後續聯繫實習事宜。

結果:阿里內推經過,選擇阿里巴巴yunOS事業部實習

騰訊內部機會(第一次)

此次面試是和我工做室安卓組的一位朋友去微信總部直接面試。由於以前咱們由於感興趣參加了華工的微信課程學習,朋友獲得了面試機會並也跟着前去,那時候是5我的一塊兒去的。

  1. 筆試:完成一份英語的Java筆試題後等通知。
  2. 一面:一位斯斯文文且很帥氣,負責網絡底層開發的面試官面試我,不得不說微信的辦公環境很nice,咱們在桌球桌旁邊面試,整個過程氣氛很好。問了我Java基礎和一些實現細節,安卓也如此。微信的面試官很注重技術實現的細節和優化,雖然有些面試題忘了,可是我還記得他在玻璃牆上畫設計模式和SQLite底層索引實現及其優化的圖。人超級好,針對個人不足指出給了不少建議。以至於以後我面試過程當中遇到過此類問題都能答得不錯。很感謝這位面試官。
  3. 二面:一位身材高大,比較沉穩的,負責NDK開發的面試官面試我,問了安卓事件接收和傳遞機制;Linux進程和Java進程有何區別;問了一個主線程繪製UI的問題;C語言和Java語言的應用及其各自的優點;本身的規劃等問題
  4. 三面:是一位微信元老架構師。爲了項目技術和實現細節;問了Http技術還有密鑰交換協議;安全通信;還有一些忘記了。到四面的時候只剩下3我的面試,面試結果是3選1.

結果:跪了。工做室的朋友面試功過;另一位華工的朋友也沒進。讓咱們去參加騰訊春招。此次面試看到本身的在網絡方面很不熟悉,網絡課程要等到下學期纔開始,因此只能提早本身惡補了。

騰訊實習面試(第二次)

  1. 筆試:華工筆試,內容涉及C語言,C++語言,Java語言,數據庫,計算機網絡還有算法(網上有好多筆試題,能夠借鑑參考下)。
  2. 一面:喜來登酒店,東圃。比較緊張,面的依然是項目技術,Java基礎,Andriod基礎,算法(算法這一塊在劍指offer中題目),操做系統中斷,進線程區別;計算機網絡 TCP,HTTP相關,NAT等
  3. 二面:喜來登酒店,東圃。面的和一面差很少,只是知識點會比較深。好比反射機制會問到Android實現場景和優化等等。
  4. HR面:和HR說明了想進微信團隊,HR也代表了QQ團隊及其團隊提供的平臺,也向HR代表了經過yunOS事業部實習,HR讓我本身思考及其選擇。

結果:沒能參加鵝廠實習〒_〒。如今工做回想起當初若是去 QQ 可能就不會出現後續的曲折,可是想一想每一個決定都是本身作的,只能本身承受。

到此,春招告一段落,最後選擇了yunOS事業部實習。整個過程面試安排得很緊密,會以爲面試後很累。建議參加春招的小夥伴能選擇3-4家本身追求的企業針對性去複習,不推薦海投。我本已爲春招進了阿里後,能學習留在杭州,接下來一年的大四生活能夠安排更多的學習機會〒_〒。而後最後並無,那一年的實習成功擁抱了變化,雖然能轉正到北京或者在杭州轉正作C++,可是並不是本身所好。

當大三春招沒有辦法提早去實習轉正的時候,大三秋招其實到了關鍵的時候。通常在咱們學校學計算的,基本大三秋招肯定了 offer,大四去實習,這個是大部分人選擇的規劃。因此在yunOS實習以後,從杭州飛回廣州,回來的時候是9月5號,進入秋招時段。

阿里實習面試(第二次)

由於知道事業部今年實習生基本都沒有轉正機會,身邊不少實習的研究生師兄本身在阿里平臺上聯繫其餘事業羣。無奈我還天真的覺得事業部會安排咱們面試其餘事業部,然而並無〒_〒,讓我感受到巨坑。後來本身在阿里平臺上搜了作Andoird工做的不少工程師後,有一個主管願意接納我。面試了一些內容後,在後續面試過程當中因爲崗位須要在北京工做,並且可能須要轉前端,不符合本身的發展意願,因此就明確說了,也很感謝這位大哥給我機會。

騰訊實習面試(第三次)

回到廣州的時候已經9月初,那時候剛下飛機朋友就說明天一塊兒去騰訊筆試〒_〒

  1. 筆試:基本的內容和春招差很少
  2. 一面:主要問了項目和在阿里實習負責的項目,Java內存和安卓基礎
  3. 二面:Java和Android的問題基本都能答得出來,卡到算法。面試官給定一個座標,快速實現該座標方圓1千米內的酒店,座標可動。後來由於解釋不太清楚和麪試時間拖得太長,因此面試官讓我回來發答案給他。最後答案解出來了。面試官再出了一道題,由於本身的表現讓面試官感受到不夠細心和沉穩,最後沒能過二面。

結果:此次的失利讓本身變得很急很慌。騰訊原本之前本身大學最想進的公司,結果在最關鍵的秋招失敗了,並且本身的阿里實習的時候並非作安卓技術開發工做,必定程度上讓本身的項目停在春招水平,雖然也有在深刻學習其餘知識,但本身開始緊張。

惟品會(第一次)

  1. 筆試:參考網上歷屆的試卷,筆試題比較基礎很簡單。
  2. 一面:在筆試事後,接到面試通知。問了阿里的實習項目;問了ListView實現細節和優化;問了Button定製場景;問了Java基礎和安卓基礎;
  3. 二面:一面事後再教室外等候,受到二面通知。主要問了阿里的實習項目;項目用到的技術;Java基礎還有安卓內存優化等
  4. HR面:過了二面後等了一小會面HR面,HR是一位很資深的大叔,從百度調到惟品會。問了是否能用英語面試,回答否;問了生活背景;問了實習經歷;問了性格特色;而後被定義爲太消極,童年有陰影,我也是醉了。我是從小打工,並且從小學,基本每一個暑假寒假都要,並且都是那種一天作12個鐘,爲的是賺生活費和補貼家裏的學費。這段經歷讓我懂得了吃苦和堅持,怎麼就讓我變得消極和有陰影...後來HR講了本身人生經歷,說世界觀,人生觀,價值觀。我說價值觀能夠變,他說能夠嗎?價值觀不就是人對事件價值的判斷嗎?難道不是隨着人的閱歷增加有所調整改變嗎?不過他的經歷讓我深爲佩服,從入行講到佛學,是一位頗有學識的HR。

結果:跪了。緣由,至今未知,不過也好像懂得些什麼...

4399(第一次)

  1. 筆試:參考網上歷屆的試卷,筆試題比較基礎。
  2. 一面:在華工體育館二層好像。問了項目技術及其實習項目;問了使用的IDE及其項目構建;問了內存優化(由於我項目裏面有寫);Handler機制;還有一些不太記得
  3. HR面(11/13):大學四年怎麼過,學業怎麼處理,會不會有影響,職業規劃,還有什麼面試;及其提問環節
  4. 主管面(11/20):1分鐘介紹本身;簡單地問了我實習項目;學習規劃;將來職業規劃;技術在哪個層次;
  5. 總裁面(11/20):CEO和HR在同一個房間並錄像。問一分鐘自我介紹;優勢缺點;同齡人優點;爲何沒有留在阿里;提問環節.

結果:掛了。本身的發展方向和公司有所差別,這一天也由於來面試4399放棄了魅族筆試。

4399(第一次)酷狗(第一次)

筆試(11/12):在中大聽完宣講會後當場筆試,筆試題比較基礎。 酷狗測評(11/13):羣面〒_〒,技術羣面,給一個辯題讓咱們進行無領導小組討論。還好以前學過一點點辯論,混過去了o(∩_∩)o 二面(11/15):在面試完YY後直接沒吃飯就來面試。問了數據存儲方式;瞭解框架源碼嗎;imageloader底層設計;內存泄露有哪些;handler機制及其內存泄露(當時用EventBus混過去);跨進程通訊;如何保持進程間變量一致性;找出10001個數中,兩兩相同只有一個不一樣,找出不一樣(所有一次異或) HR面(11/15):理想的工做你會考慮哪些因素;工做地點;看過那些書;有沒有女友;她打算之後怎樣;在校學習狀況;社團活動及其學習計劃;若是兄弟失戀了怎麼辦;理想工資;介意公司規模嗎;還有提問環節,我問了會有下輪馬?具體下輪面試時間; 總裁面(11/20):問了技術規劃;學習習慣;針對本身最熟悉的知識點提問;交流了酷狗音樂的部分技術實現和用戶體驗;整個過程很nice,面試官是一個很沉穩資深且頗有魅力的人 結果:過了。

技德科技(第一次)

由於本身在簡尋上寫過簡歷,因此接到了北京技德的面試通知,通過和HR溝通後基本每週面一次或者隔週面一次,整個面試過程差很少一個月。技德的面試都是在線編碼 一面(11/6):編寫一個字符串壓縮算法; 二面(11/13):編寫一個文件系統,須要本身設計數據結構,給定一個文件名,輸出其目錄下的全部文件; 三面:編寫一個算法,用最快的算法找出兩個遞增數組的中位數;而後瞭解職業規劃等等;(記憶模糊,不知道是否是這個算法...) 結果:過了。技德的面試很新穎,所有是在線同步編碼,面試官看着你便編碼便問你問題,考察實際工做的編碼能力和在線debug能力。第一面的時候感受比較大壓力,後來就不會了。反而很享受整個過程(幸虧之前很注意編碼風格o(∩_∩)o)。

YY(第一次)

筆試:YY的筆試好像是在華工進行的,筆試題難度適中。 一面(11/15):天天的面試安排都安排得很緊密,對本身說「把天天的面試都看成最後一場面試」,由於又得等待4399,又得繼續前進。問了多線程斷點下載;數據存儲方式;UI開發優化;TCP滑動窗口;字符串匹配算法;雙鏈表的優勢;Binder機制;設計模式;JNI編程;Service運行在哪裏線程;Activity啓動模式及其啓動過程;性能優化 結果:跪了。無比難受,感受本身回答得很不錯,知道結果後繼續整理筆記,本身就要像「打不死的小強」繼續尋找。

美團(第一次)

筆試:在線經過了美團的筆試,難度適中,算法題在劍指offer中出現過。 一面(11/16):在英歌海假日酒店。面了快一個鐘,問了進線程通訊及其區別;tcpudp區別;手寫三次握手;Http請求方式;get和post有哪些區別;java同步方式有哪些;手寫二叉樹中序非遞歸;數據庫事物及其底層索引實現;Activity啓動模式;兩種Service啓動方式及區別;Handler機制;安卓進線程通訊;view繪製原理;廣播註冊方式;實習項目作什麼; 結果:沒過。那天去面試美團的時候就已經有知道會跪了,並非準備很差,而是當時由於其餘事情心情很複雜,在公交車上腦子一片空白,雖然在面試問題基本都能答出來,但是細節沒有掌握好,回來後知道可能沒過,特意從新複習了一遍面試題,〒_〒內心苦,一直很緊湊的面試行程中,很累。*

匯豐(第一次)

筆試:在線測試+英語測試(〒_〒個人天) 一面:此次一面個人補面的,由於以前去參加酷狗的面試而放棄了。酷狗面試結束後參加。英語+粵語面試,問Java基礎;Android基礎;阿里項目;提問環節知道是基本作外包工做,業務是外匯,不太感興趣。 HR電面:直接談工資,本身說了指望薪資,對方知足後本身由於業務及發展規劃不符合,故拒之。 結果:拒之...

騰訊(第四次)

微衆銀行的面試已經在秋招末。在微信公衆號得知有次機會,故奮不顧身去參加。 筆試:和騰訊筆試題差很少。(記憶模糊) 一面:也是在東圃酒店。〒_〒面個人是C++工程師,問我會不會C++,我說不會後...狂問算法,我記得是4道,具體不太記得。其中三道都能手寫出來,最後一道是小存儲存大數據,用的是位圖方法。因爲本身在面試的時候想不起來(後來回來複習大數據題目的時候才掌握),故只能用hashmap存儲,效率不高。 結果:面試官讓我等,結果無果〒_〒

阿里(第三次)

實際上從HRG在杭州告知我回來後會有一個終面部門交叉面,結果在騰訊失利的次日。直接電話說「對不起......」我直接說理解後掛了電話。 在面試匯豐事後,一段時間,差很少到了11月末,面試了阿里健康。得知從集團簡歷池中選了我以後安排面試,談了轉正待遇後安排面試,兩面都視頻面試。 一面:安卓基礎;項目技術;性能優化;學習目標;Java基礎及其內存回收等 二面:項目技術;安卓Framework知識點;性能優化;開源框架知識;提問環節問了所作業務等 結果:過了,資薪待遇談了也清楚了。由於實習時間及所在地點時間與自身狀況衝突,也不是本身最想要去的部門就拒絕了。

迅雷(第一次)

面到這裏基本秋招都已經結束了,學校基本快放假。獲得迅雷的面試是由工做室學長B推薦的。因爲部門比較缺人,因此直接技術面 技術VP面:項目技術細節,面試官抓了不少項目細節問,好比說多線程斷點下載的每一步,每個代碼邏輯等;性能優化,這一方面我是有過準備的,回答得比較系統,比較滿意;最新安卓技術瞭解狀況;Java技術細節,問得很深,從程序啓動到垃圾回收,〒_〒不愧是vp;最後問了下Java異常和安卓異常的區別,答得不太好;問了發展意願及其職業規劃等等。 結果:直接發offer...很感謝迅雷的HR和技術vp,人真的很nice,後來考慮到發展地點及其工做,沒有接受offer,很惋惜。到如今內心還一直對負責我入職的HR和技術Vp心存愧意。

網易(第一次)

也許是我不肯意放棄,不肯意將就,因此我纔會選擇堅持,感謝網易不拘一格。

放假了,基本同窗朋友都回去家裏了,整個宿舍只有我一我的,年底了,也該收拾東西回家了。

網易的招聘,是我在校招日曆上看到的,當時和一位學java後臺的哥們一塊兒投的。而後趕忙在校複習知識點和開始畫安卓知識架構(我喜歡用畫圖的形式讓本身掌握的知識互相關聯),而後開始在牛客網(以前面試的企業歷年筆試題基本都在上面能找到,是一個刷題的平臺)及論壇找網易筆試題和麪試,基本刷完了網易互聯網和網易遊戲的題目,雖然有些不懂但是仍是須要硬啃下去。接近筆試前昔,咱們仍是沒有收到筆試通知。哥們的表姐也投了網易,不過人家是名校碩士〒_〒,收到了面試通知,我倆妥妥地跪了。我不甘心,我認爲本身可以作得出網易的筆試,若是能有一絲機會,死也要讓我死得明白。因而我倆去「霸筆」...幾間筆試科室,廣州地區幾十個運營崗筆試名額,幾十個產品筆試名額,只有6個技術筆試名額,這讓我瞬間很慌很難受。

哥們讓我走,估計咱們沒機會,但是我那一刻真的很難受很不甘心。

我硬着頭皮進去問HR說 「我來自...,我投了貴公司的技術崗位後沒有收到通知,請問能夠給我筆試機會嗎?」

另外一個HR說 「沒收到通知是不能夠筆試的,除非有人沒來筆試,試卷只有6張」。

我把本身的簡歷遞給前面HR。

「這個是個人簡歷,若是技術崗有人沒來面試能夠不能夠給我一次機會,我在外面等候,謝謝你!」

我出去外面後,剛纔接了我簡歷的HR出來了說「大家都是沒有接到通知的嗎?(還有一個產品來霸筆),在這裏等一下,若是有機會我就來通知大家。」

後來筆試開始了,有些參加技術崗的尚未來,但是沒有人通知咱們進去筆試。我哥說等到30分若是沒有就走了,後來30分過了,仍是沒有人通知咱們。我不肯意走。

「要不你先走吧,除非HR出來講沒有機會,否則我多等一下吧。」

筆試開始了一段時間,有一位HR走了出來,說 「大家都是來筆試的嗎?進來吧,把簡歷給我。」

我幸福地跟着進去,而哥們卻說「我就不了...」先回學校。

我很激動,自信地完成了那份筆試題,到如今,我還依然能記得那時候的感受。哪怕失敗,也要讓我知道我不行。

  1. 一面:一面是在網易大廈附近的E時光,三個面試官,一個Java面試官和兩個Android面試官。問了:Java基礎;線程安全處理;手寫解決判斷鏈表是否有環(當時寫了思路);手寫例模式(進程安全版+枚舉);Java程序啓動過程(5個過程);Java內存回收機制(包括回收算法);安卓基礎;Handler機制及其源碼(面試官細節到具體代碼及方法,〒_〒很年輕的面試官,技術好紮實);消息傳遞機制(具體到View和ViewGroup的區別);框架了解及其imageloader;Lru算法及其軟弱引用的使用;分辨率適配等等。

  2. HR面:網易大廈,問了面試公司及其offer狀況,如實回答,但願能在廣州;發展規劃及其學習習慣;網易招聘的優缺點;阿里平臺資源的優勢;網易bobo產品及其同行產品的瞭解比較;提問問了是否還有面試,具體工做還有是否能夠提早實習,實習安排。

    面到這裏,已經年底了。HR說能夠提早回去家裏,我仍是依然留在學校幾天。整理這幾天的面試問題還有面試經驗,整個宿舍樓沒有人,只有我和幾隻流浪貓。偶爾作作飯,它們也會來我宿舍,我也會給它們吃的,感受本身變得很安靜。在回家的大巴上收到了網易的終面,代表年後還有終面。面了那麼多公司,累也該累了,反而以爲很釋然。帶着這個面試消息回到家了,始終沒能放得下。除了在家了幫幫這幫幫那,在朋友家聊聊天,基本都是在看書,也買了一本新出版的安卓技術的書,過年那段時間看完了。初九那天回到學校,繼續複習,整理在家學習的和之前的知識點,打算面完網易後休息一段時間,但願能傾盡本身全部心力去完成此次面試。

  3. 終面:HR面+總裁助理面。由於不知道是不是技術面,因此把全部的技術點用三天都複習完了,用一天準備了HR面及其自身狀況的問題,主要理清楚說話的邏輯思惟。HR面,是我年前的HR,很親切。和她聊了下年前到年後這段時間的學習狀況及其學習了哪些新的知識點;本身天天的學習規劃;bobo產品競品分析;使用過的一些工具,好比思惟導圖爲知筆記(由於以前裸ubunut系統,因此只能用爲知筆記);職業規劃;實習內容及其輪崗事宜;指望工資及其在手offer薪資;行業薪資等;整個過程氛圍很nice;面試完後搭車快回到孤島的時候收到電話通知到須要再面試〒_〒,是另外一位面試官。當時內心其實蠻緊張(難道對我以前所述技術有疑惑?仍是我表達的內容公司還有爭議?)。在車上我回想着整個幾輪面試的過程,細節到我所說到的內容,技術在腦海裏過了一遍。對本身說「來吧!若是你想問我技術,來吧,我都作好準備了!」就這樣,我頗有信心地衝了回去(快6點了,怕面試官下班)。結果回到公司居然發現面試官是一位很年輕親切的總裁助理,她和我代表了回來面試的緣由和給了一杯水(〒_〒,感受好感動),表達了歉意後開始面試,問了生活狀況;學習背景;興趣愛好;長期規劃;聊到網易bobo的產品及其同行同類產品;事業部發展前景;網易公司文化;面試官自身在網易的經歷;女友及其將來規劃;學習習慣等等。整個面試過程更像是在聊天,是一個瞭解雙方和創建信任的過程,很nice。

結果:過了。也欣然接受了offer。

在面試阿里騰訊三四次的過程當中,雖然有收穫到其餘 offer ,但並非我大學時期心儀的 offer。因此到最後,還想去網易搏一搏。結果這一搏,就一直待到了如今。我以爲人生頗有意思。高中的時候,我努力想考一個物理專業,可是後來我卻進了計算機專業。大學的時候,我努力想進騰訊或者阿里的技術部門,可是後來我卻來了網易。就是如此夢幻。 假如你已是應屆生了,經歷過一兩次batm的面試失敗沒有關係,只要有機會就上。哪怕最後你最心儀的機會沒有了,你要懂得抓住當前最合適你的機會。真的,不少時候將來發生什麼你都不知道,或許當前的機會,纔是最適合你發展的。

被迫考慮機會

真的,不少時候將來發生什麼你都不知道!(預言家 =。=)。 我也不會預想到我工做快一年的部門由於公司架構調整而須要被迫考慮從新找工做。 實際上,我很是喜歡當時部門的人,部門是小團隊項目化做戰,很是靈活,技術和產品自由度很是高,你們配合得很愉快。雖然那時候你們分道揚鑣,可是咱們如今的微信羣依然保留着以前最完整的人員,還很活躍。

工做認識一知己,前輩,以前就業於UC,平時交流甚歡,喜歡同他討論和交流技術問題,在看身上看到了開放與追求的精神。正值事業部結構變更,整個事業部工做氛圍和模式都發生了巨大的變化。他建議我去更大的環境更好的氛圍嘗試,我也堅持着本身的職業規劃和學習道路。他同事幫忙內推,不巧的是那天發燒=。=,和公司請了假,原本擔憂狀態很差,不過一想到本身之後要作的事,立馬就飛了!不要慫,就是幹!

面試地點在黃埔大道這邊,沒想到離我住的地方那麼近!二十分鐘就到了,原約在2點的面試,我12點50分就到了...提早去面試也很差,畢竟太早去也不是守時,也會打亂別人的計劃安排,故在樓下走了幾圈,有點冷,不過滿滿的熱情啊!把以前準備的知識都過了一邊,算法,數據結構,網絡,操做系統,java和安卓。本身在腦海了想了n多種面試問的業務場景,組織表達了一遍上樓了。

阿里(第四次)社招一面

天吶魯,我還覺得要筆試呢,直接進入正題面試,有點措手不及,不過先自我介紹,因此我調整了一下情緒和思路。面試官很帥氣啊,是一個很年輕可是應該有蠻長經驗的面試官。問得問題主要有:

  • 推送sdk底層實現  
  • socket相關實現  
  • mvc mvp mvvm區別與項目使用狀況  
  • 網絡層相關設計,volley底層實現,緩存相關  
  • 自定義view相關  
  • 下載模塊涉及,成功率相關  
  • 彈幕與播放器相關  
  • 跨進程通信手段與注意點,webview相關  
  • EventBus相關  
  • 性能優化經驗及手段  
  • 爲何想要換工做 
  • 興趣愛好,工做室狀況,如何協調工做室與辯論隊 
  • 平時學習習慣和安排  

上述的點可能有一些遺漏或者記得不太清楚,不過總體面試官給人的感受真的很好,大廠的環境也贊!除了前面聊技術外,也聊興趣愛好,平時一些習慣等,總體來講氛圍很輕鬆。

阿里(第四次)社招二面

二面是一個臉色紅潤,很和善的一個面試官負責。想了一下,除了和大學廖老師溝通有這種感受以外,這位面試官給我一種導師的感受哈。面試的問題主要有:

  • 網絡請求涉及,如何設計緩存
  • 性能優化手段,場景
  • dp的設計  
  • 熟悉的底層源碼,廣播底層實現,這一點本身確實還了解不夠,不過本身講了哦從wsm->activity->view的事件傳遞過程  
  • 聊以前阿里的實習
  • 爲何想要換工做 
  • 職業規劃
  • 短視頻行業,Bolo相關及一些競品,由於平時也會留意本身開發的軟件及競拍,行業狀況,因此有一些本身的看法
  • 聊興趣愛好
  • 聊王者榮耀產品相關

整個過程面試官給人印象很深,除了互相交流得開外,他的問題也頗有深度,不過若是真的答不上就請教下就好。最後面試官問了是否有哪些問題提問諮詢:

  • 從剛纔所述的職業規劃,但願面試官給出意見和建議
  • 若是有後續面試,會在何時安排

仍是到上週的面試辦公室,10樓的環境給人的感受很清新,自由。

阿里(第四次)社招 leader 面

面試官很年輕,讓人感受頗有幹勁。其實今天一成天都昏昏沉沉的,人狀態不好。可是和麪試官聊天,能說到的都是心裏的一些想法,因此聊起來很舒服,他的一些建議也很值得我思考檢討。

  • 自我介紹
  • 崗位要求
  • 實習內容
  • 工做負責內容
  • 換工做緣由
  • 優缺點
  • 學校經驗
  • 家庭狀況
  • 我的現狀,還有個人眼睛哈  

面試的問題可能記不太清楚,可是有兩個點我很深入。 第一個是本身現階段要穩下心沉得住氣。幾位面試官都和我說到了這一點。確實是這樣,我很看重職業生涯前幾年的學習積累與心態沉澱,也明白了當前本身最須要作的事是什麼。 沉得住氣,我本身的理解是:

  • 心態不要浮躁,相信本身的規劃和按照本身的規劃走
  • 學習新知識,要學會從宏觀上懂得一個知識牽扯出的知識網,更要耐得住心去一句一句代碼debug每一個細節
  • 清楚地看清本身的技術現狀,虛心地取長補短

那天結束以後,用新的心態去學習retrofit源碼,記得大學的時候看imageloader,volley的時候,會沒有太多的耐心去深挖,雖然知道流程和某些細節,可是對底層原理其實沒有足夠的掌握。很奇怪,今天越挖,發現本身對Android越無知,我第一次感到本身無知時,確實開心的。當我向我以前同事說某個源碼細節的邏輯和咱們項目所用到的邏輯有誤差時,他去調式以後發現「是項目用錯了!」。感受內心仍是美滋滋的。 第二個是本身表述不夠精簡,有時會用辯論的方式來解釋一大堆東西,會讓聽衆感受很羅嗦。這也是個人問題,改!應該嘗試先下結論後再根據狀況作分析。 面試完走出辦公室,還看到面試官拿着筆記本,打了個招呼,感受心暖,感謝此次機會。

阿里(第四次)社招HR 面

其實hr面應該是我最緊張的一面。多是最後一面,也很看重此次的面試,擔憂本身說得很差。過程當中本身也由於喉嚨的緣由喝了屢次水,思惟中斷了好多。不過,面試官是一位比較有親和力的姐姐,不管的問問題的方式仍是追問一些細節,都讓人挺舒服的,不會感覺到太大的壓力。

  • 入職半年多,爲何選擇換工做
  • 如今事業部情況
  • 負責的項目工做 
  • 最困難的事是什麼,想到的是項目難點和當時在工做室作項目,那段時間確實比較艱難,算印象最深入的  
  • 職業規劃,我可能表述不太好。從2-3年階段性計劃,到今年,這個月,這周。講得邏輯性很差。本身的習慣確實是工做日+週六週日安排,可能當時比較緊張,講得很亂。
  • 堅持最久的事,這個應該是和我兄弟去跑內環哈,從半圈到兩圈是如何煉成的
  • 最有成就感,想到的是項目難點,後面仔細想,確實是由於攻克的難點給用戶帶來好體驗。我還記得菠蘿種子羣的一個好友,網易忠實粉絲,和他交流過不少次關於菠蘿的體驗,有一次和我聊到輸入法的緣由,後面本身就花時間重構了。其中還和hr聊到關於攻克難點和所花的時間問題,確實是我本身表述很差,一件事的難易程度與完成時間只是正相關。,當項目頻繁迭代,須要想辦法縮短工時並保證質量後「偷」時間來作重構優化,其實本身那時候頗有壓力。這些東西不是需求,而是你想讓產品更好卻想去作,改得好當然好,萬一改很差,那就是浪費時間,可能會應該當前開發狀態。和不少同事溝通他們都不會選擇這樣去作,要麼要求產品加工時,要麼就不作。但是本身很難接受放着無論吧。後面用來兩個多星期的午休和下班瑣碎時間,週末空閒時間把東西作出來,第一次正式給項目重構使用,我是很自豪。最開心的應該是那位好友說的「菠蘿的開發真不錯!至少大家對用戶有心」 
  • 薪水相關 

總的來講,今天面試的表現,本身給本身的評價是通常。最後溝通的時候由於薪資問題最後黃了

不甘落敗嘗試螞蟻金服

螞蟻金服的面試機會是那時候在看機會的時候,在脈脈認識的一位螞蟻金服的面試官那裏爭取的。在溝經過後,對其部門的意願挺大的,因此就嘗試下把簡歷給了面試官。過了幾天,沒想到收到了其部門HR的面試邀約。恰好那時候公司部門架構調整到了尾部,咱們可能被合併到一個新的部門中開展新的工做。可能大學實習給我留下很是好的印象,很喜歡阿里的技術部門,加上 UC 的面試沒有如意,因此就毅然進行面試。

阿里(第五次)社招一面

  • 介紹本身
  • 介紹簡歷上的項目
  • 高性能列表實現,重點圍繞 recyclerview 展開,如何複用,如何緩存
  • 性能難點如何攻克
  • 性能優化方面項目中作了哪些工做
  • 熱修復原理,類冷啓動修復原理,類熱修復原理,classLoader雙親機制
  • 換膚原理
  • 設計一個圖片框架,我考慮的是如何加載,如何編解碼,如何緩存,api的易用性,大部分參考 glide 思路
  • 在不少數中找出前n個最小
  • 本身的方向是什麼? 想作業務,仍是想作專點的技術,如何理解項目架構。
  • 反提問:「本身技術性回答得怎樣,有哪些改進。」

面試官給的建議是:技術還不錯,可是介紹部門業務和本身的切合度時須要 「表述要簡潔,邏輯要清晰」,**

阿里(第六次)社招 leader 面

  • 介紹本身狀況,學android,實習經驗
  • 介紹網易經驗,哪一個項目最大,項目規模,項目人員分佈
  • 擅長哪一方面,這個問題很是致命,必定要選你足夠理解的,我那時候講的是性能優化,可是感受講的很差
  • android 虛擬機區別,編譯區別,dex區別
  • 熱修復流程,原理是什麼,業界有哪些方案,對好比何
  • 打包流程是怎樣的
  • 應用啓動相關流程,從孵化進程到MainActivity#onResume繪製整個流程
  • 新版本android特性
  • 手勢滑動事件分發
  • view繪製流程
  • gradle執行流程
  • apk安裝底層細節
  • 最後留了一道算法題,我作了兩天以後發給面試官

阿里(第六次)社招 交叉面

  • 介紹本身
  • 項目經驗,團隊狀況
  • 對網絡是否熟悉,一次http請求,https總體實現
  • 之後想作什麼,如何規劃本身技術
  • 開源貢獻,博客記錄相關的開放性問題
  • 反問:後面是否還有技術面試,獲得的答案是基本不會有了,等 HR 面試就好

阿里(第六次)社招 HR面

  • 介紹本身
  • 項目經驗,團隊狀況,學習狀況,薪資待遇
  • 將來技術規劃,是否考慮杭州,將來家庭規劃
  • 反問:大概多久會有答覆,獲得的答案是當週週五前。

當週週四收到了人生中第一個阿里的正式 offer,仍是我最心儀的螞蟻金服的技術部門的 offer。技術方向和薪資待遇都大大超過個人預期。HR 讓我考慮一週以後給答覆。

過了一週,我決定放棄這個 offer,並開始本身新的技術規劃,在新的部門好好幹。一干,就幹到瞭如今。

若是到如今問我,「當時放棄螞蟻金服的 offer 後悔嗎?」

我會說 「說真的有點遺憾,但我沒法比較孰好孰壞,我如今就挺好的。」

若是你剛開始出來面試,那麼就要用心去準備,去模擬,把每一個機會都抓住。

若是你已經面試了幾家可是都還不理想,哪怕是疫情背景下,你不要將就。我一直都以爲作技術的不要將就,多是個人性格。那麼繼續嘗試,把你每一次的面試的經歷都記錄下來,面試題是什麼,你是怎麼回答的,甚至你能夠在面試的時候把本身的回答錄音下來,回去好好聽好好修正。一次會比一次好。

若是你有幾個offer在選擇上出現了分歧,建議要開始規劃從職業規劃來考慮offer。若是你打算將來深耕音視頻,那麼短視頻技術offer則大於非短視頻技術offer。若是你打算考慮往技術經理/技術團隊管理,那麼能帶團隊的offer > 不能帶團隊的offer,參與技術選型,技術架構搭建的offer > 負責某一塊業務的開發 offer 等等。

這幾年下來,我發現 「選擇」 和 「努力」 在不一樣時期有不一樣的側重。

  • 畢業時期,「選擇」 > "努力",好的平臺能帶給你更多的機會,更好的薪資待遇,讓你的視野更廣;
  • 畢業前5年,「努力」 > 「選擇",當你有一個好的平臺以後,你要懂得利用平臺資源去學習,好比各類內網,公司技術福利等,並藉着平臺項目的實踐機會去野蠻生長;
  • 後幾年,「選擇」 > "努力",這是由於前幾年爲了積累的專業優點或更高的視野讓你看清你之後要幹什麼,若是說選擇的是平臺,那麼這個選擇就是將來要嘗試突破的方向。

固然,這些想法受限於個人經歷,不免難以苟同。

非技術性問題的面試準備

非技術性的問題,實際上不少時候程序員回答得並很差,除了表達缺少邏輯性外,溝通不順暢也是一個問題。但事實上這些問題均可以提早準備的,並且我本身之前準備面試的時候都會把這些問題過一下,對着鏡子表述。你只須要針對每個問題點記住幾個關鍵詞,而後嘗試脫稿,本身嘗試把它串起來表達,幾遍以後基本就 OJBK 了。

如下回答僅供參考。

自我介紹

我是來自xxx的xxxx。目前在xxx組Android研發。

平時基本能提早完成需求,常常會給產品同窗提供一些技術上的意見或改進,並自主作一些技術調研來優化產品。另外,我更願意讓別人感覺到,我是一個隨和但執行能力滿足的人。我喜歡組隊答辯論,樂於與別人溝通與想法碰撞,樂於分享我本身觀點與博文,由於我認爲分享不只僅是知識的傳播交流,對他人也會知識上的從新認識,同時也是也是對本身的認加強本身的信息,對團隊而言,能活躍整個技術氛圍,讓工做變得輕鬆,對新技術有渴望與追求。

但同時,我對本身也的要求也很是嚴格。工做上我喜歡經過化邏輯圖細化需求實現,並按時點攻克,這種方法很是有效。而職業規劃上,我會細分到每一週,每月的學習計劃。每年或者每一個階段我應該去作哪些事情。可能有人會說,我給本身畫圈限制死個人生活。其實否則,剛好相反,當我到達某個計劃節點時,我更清楚我應該作什麼且明白我爲何那麼作,這會讓我對生活變得更有信心與熱愛。

平時看的書

技術類的書好比

《Java編程思想》《Effective Java》《突破Java程序員基本功的16門課》《深刻理解Java虛擬機》 《Android高級工程師進階》《Android研發錄》《Android開發藝術探索》《打造高質量Android應用》《Android應用性能優化》 《安卓內核剖析》《深刻安卓卷1》《深刻安卓卷2》《Android系統源代碼情景分析》

非技術類的書

《麥田裏的守望者》《小王者》《少年維特》《世界因你而不一樣》 技術類的書閱讀帶來技術收穫,非技術類的書閱讀是興趣,是擴展視野等均可以

博客類網站

  • App:掘金(yummyLau),之前也有簡書(什麼都學的小明)
  • 網站:簡書,掘金翻譯,Google developers,泡在網上的日子, CodeKK,安卓週報
  • 博主:stormzhang,酷殼,工匠若水,羅昇陽,代碼家,鴻洋等

怎麼解決問題呢?

先找到問題的緣由,而後在找解決問題的辦法,找到問題的緣由比找到解決問題的辦法更重要。

若是你不能解決,那麼你能夠求助於其餘人,而當你不知道問題的緣由的時候,你去求助別人的時候,別人還有幫你去找問題的緣由,這確定會浪費不少時間的。

先不要找解決問題的辦法,先找問題的緣由。

一旦你瞭解解決問題的思路,那麼當問你一些開放性的問題的時候好比 「項目裏你遇到xxxx狀況,你怎麼處理的?當你解決不了的時候,你會怎麼作?」

那麼你就能夠圍繞上述的邏輯回答 「遇到xxxx狀況的時候,首先我會分析出現這個問題的緣由,(此處省略1w字),最終解決了。或者解決不了的時候,(這裏須要強調本身能用的都用了,能查的都查了)就會去請教這方面比較專業的同事(此處省略1w字),最終這個問題在他的建議下我成功解決了。」

爲何選擇離職

最主要的緣由仍是與本身的職業規劃有誤差。

本身但願能呆在一個有技術方向性與能充分交流碰撞的團隊中,但願能充分發揮本身更多專業能力,在比較充實的節奏中度過職業的現階段。 由於事業部重組的緣由,咱們的項目組被分派xxxxx作xxxxx,目前只須要保證完成工做便可,codereview過程當中,能感覺到迭代功能完成需求會是最大知足,同時項目內團隊基本不會互相分享項目經驗及心得。

我但願能夠完成得更好提早完成,能夠幫助項目作優化作分享。在codereview過程當中,我更但願咱們不只僅能把產品作好,還有更多的時間去優化,掌握更多新的技術來優化項目實現,讓產品有更好體驗。我但願咱們的團隊有技術瞻仰性與向前性,對技術的思考有深度,我渴望投身這樣的團隊並一塊兒完善團隊建設,而不是單純無線迭代。因此我選擇了在這個時候嘗試新的機會。

不少時候,咱們是能保證工做完成的,本身會作更多的優化或者調研工做來完善產品,整個良性過程當中,組員的價值能獲得最大化體現, 而團隊應該是支持這種行爲的,而不是間接地打磨掉組員的正向行爲,這會讓組內的氛圍沉寂與消磨人的積極性。

我曾微信號分享過一篇關於一位大哥「輝哥」的文章,講到作事要有匠心,要較真深挖,我解讀爲專一。而團隊溝通工做應該是共贏的過程,你們能夠放開交流碰撞,以team work形式去解決難題,這即是我追求的環境。

如何勝任這份工做

個人理解是,崗位的內容是高質量迭代開發國際業務客戶端,能承擔缺陷重構和痛點優化。

本身接觸Andoid開發也兩三年,在職時間差很少一年,一年內參與了xxxx項目迭代開發,能保證本身負責的工做都是提早完成的。而剩餘的時間,我會主動去重構項目,也能針對用戶痛點的主動作技術預研。而崗位的內容正是我主動追求的,我很樂意去挑戰工做上的難點。

我我的的職業規劃中,當前階段是想深刻掌握android底層的知識,因此當出現一個業務問題前,本身會深入去認識一個問題產生的緣由。針對工做的內容,本身能冷靜分析緣由並自主學習一些方案來解決。而提供的崗位工做正好是給了我充分的面對困難場景鍛鍊本身的機會。

學習習慣

這些越細越好,重在真實。

  • 週一到週五,9:30-7:30,上下班分別會看兩篇博文;
  • 工做日完成通常會有兩個小時時間用來繼續本月的規劃
  • 週六週日會把工做日踩的坑記錄下,有時候寫寫博客,看看技術文章。

興趣愛好

打籃球,寫書法,游泳,桌球,乒乓球等,比較普遍,可是每一項我都在身邊人中比較拔前

最近,想練長跑,慢慢看能不能小跑馬拉松。

耐力,定性,這二者都是我這階段須要的。

優缺點

責任> 協做溝通>接受意見但獨立想法>自學能力>執行能力強

解決問題的心態不成熟,有時候容易鑽牛角尖,處理計劃過於急躁。

可是我相信,這是每一個人都會經歷的,並且是一個蛻變的過程,而我也正在慢慢轉型。

工資待遇

能夠了解先xxx的待遇結構嗎。

但願能在xxxxK,由於(這個要按照真是想法表達)對於本身而言,我更看重xxx平臺能給個人的職業幫助,而我也很相信本身能給團隊創造相應甚至更多的價值。

想問的問題

技術面

  • 通過剛纔的交流,針對應聘的崗位,面試官有哪些意見或建議,我能力的匹配度大概多少?
  • 假若有幸能經過面試,這個崗位現階段負責哪些的工做?

HR 面

  • 通過剛纔的交流,勝任該職位我應該增強哪些能力?
  • 假若有幸能經過面試,會進入哪一個產品線,將來這個產品的發展方向和規劃會有哪些?
  • 面試結果最晚會在何時通知?

面試涉及知識點/體系/書籍推薦

因爲爲知筆記連接分享失效了,資料統一整理到公衆號一篇文章內。

掃描二維碼

或微信搜索 「Android之禪」 回覆下 「筆記」 就能夠了。

內容包含:

  • Java相關

    • HashMap
    • ArrayMap源碼
    • Java關鍵字+類型大小
    • 進程線程+實現+同步問題
    • JVM模型+垃圾回收
    • 內存規則+程序加載過程+對象內存分配
    • 反射機制+android應用
    • JVM-編譯相關
    • JVM-方法棧
    • JVM-對象的建立
    • JVM-內存區域
    • JVM-垃圾回收
    • equals與hashCode
    • 異常處理
    • IO流+字節流+字符流
    • 集合機制+哈希+線程同步集合
    • 個人Java編程心得
  • 網絡相關

    • https/http詳解
    • 一次http請求流程
    • TCP流量控制、擁塞控制、可靠傳輸及區別於UDP
  • 設計模式

    • Android中的設計模式
    • 設計模式-單例模式
    • 面向對象7個設計原則
  • Android

    • 源碼必懂-xml加載流程
    • 源碼必懂碼-Touch事件
    • 源碼必懂-Handler
    • 源碼解析-Rxpermissions
    • 源碼解析-LiveData
    • Android類加載器
    • Java類加載
    • Rxjava 的概括思考
    • Framework基礎結構
    • Android虛擬機結構區別
    • 啓動app流程
    • 啓動framework流程
    • Android架構總結
    • 模式之MVC/MVP/MVVM
    • 換膚skin-support流程
    • 圖片庫glide
    • 源碼-AsyncTask
    • 自定義view流程
    • Activity相關
    • Fragment基礎
    • View篇之Touch傳遞
    • EventBus
    • 泄漏類型及定位
    • 性能可優化的點
  • 其餘

    • 排序算法
  • 書籍推薦

    • 《Java編程思想》
    • 《Effective Java》
    • 《突破Java程序員基本功的16門課》
    • 《深刻理解Java虛擬機》
    • 《Android高級工程師進階》
    • 《Android研發錄》
    • 《Android開發藝術探索》
    • 《打造高質量Android應用》
    • 《Android應用性能優化》
    • 《安卓內核剖析》
    • 《深刻安卓卷1》
    • 《深刻安卓卷2》
    • 《Android系統源代碼情景分析》
    • 《巧用Gradle構建Android應用》
    • 《Android高薪之路》
    • 《Android羣英傳》
    • 《程序員修煉之道--從小工到專家》
    • 《代碼的將來》
    • 《第一行代碼》
相關文章
相關標籤/搜索