前言
筆者2016年雙非不知名小本科畢業,到2020年6月已經開發4年了,畢業后一直輾轉于各種小公司做小開發,但是閑魚也有翻身夢,一直想去大廠看看,就蹭蹭,不進去也行啊,于是計劃2020年初金三銀四的時候去碰碰運氣,正巧碰上疫情,計劃也就被擱置了,一來是怕死,出門都戰戰兢兢的,別說各個城市跑面試了,二是各種公司都在裁員,只有大廠還在招少部分人,大廠的門檻怕是都要被踩爛了,
疫情穩定下來后,便開始慢慢的為跳槽做準備了,到2020年金九銀十的時候,先去面了些不大不小的公司,最后才選擇了幾家心儀的大廠投簡歷、面試的,春節節前成功入職了位元組抖音,現在正式入職了,將自己的面試經驗分享出來,希望可以給大家做個參考、對大家金三銀四跳槽有所幫助,

簡歷
首先是簡歷,一般找一個模板,寫清楚掌握的技能和自己的專案經歷即可,
簡歷建議2頁就行,太長太短都不好,
建議用掌握與熟練掌握取代了解與精通,
這里教給大家一個小套路,可以提高收到面試邀請的機會,那就是在你簡歷的左上角印上準備面試公司的Logo,面試官在一堆簡歷中突然翻到一張印著自己公司Logo的簡歷,不免會多看你的幾眼,

關于演算法
演算法可以說是現在找作業必須的知識儲備,具體得看公司的業務,以我的面試經驗來看,總體來說問的不多,還有些公司基本不問演算法,
但是如果去面試位元組,網易,快手這種每輪必問演算法的公司,因為演算法題拿不到offer就很可惜了,
演算法題就好像高考語文的古詩詞默寫一樣,分不多,但丟了就很可惜了,
主要還是平時力扣的刷題積累
面經
接下來就是各公司的面經了,分享出來供大家參考,

上海嗶哩嗶哩(B站)
第一個去的是我一直心心念念的B站,可以第二輪就掛掉了…
B站一面
1.自我介紹
2.treemap、紅黑樹、完全平衡二叉樹
3.快速排序和插入排序
4.個大致有序的陣列如何排序,最快時間復雜度
5.如何自定義實作一個FlexLayout
6.RecyclerView的回收復用機制
7.如何實作RecyclerView的區域更新
8.說說對泛型的了解,Retrofit中的泛型是怎么決議的
9.說說對binder機制的了解
10.行程的狀態,執行緒的狀態,兩者有區別嗎
11.synchronized鎖住物件的理解
12.Fragment replace生命周期變化
13.TCP和UDP有什么區別? 講講招手揮手程序
14.用過C++開發嗎
15.Dalvik和Hotspot虛擬機了解嗎?有什么區別?
B站二面
1.說自己做過最滿意的專案
2.性能優化你做過哪些作業
3.螢屏適配做過哪些作業
4.遇到過哪些坑(困難點),是怎么解決的
5.如果要你來開發B站的一個頁面,哪一個頁面可以很快入手
6.用過哪些框架?MVVM?Jetpack有入手嗎?
7.用過哪些開源庫
6.熱修復、插件化都用過,遇到過哪些坑?可以講講原理嗎
7.為什么想來B站,看哪種視頻多一點,點贊多還是白嫖多
8.你覺得B站APP有哪些可以優化的地方

斗魚直播
斗魚一面
1.Java多型的理解
2.HashMap原理
3.手寫一個單例模式,問有什么優缺點
4.View的繪制流程
5.APP的啟動程序
6.說說插件化的原理,資源的插件化id重復如何解決?
7.Recyclerview優化
8.Handler訊息機制
9.用過哪些第三方庫,OKHTTP原理說一下,熱修復原理呢?
10.對螢屏重繪機制的了解,雙重緩沖,三重緩沖,黃油模型
11.onCreate,onResume,onStart里面,什么地方可以獲得寬高
12.為什么要用執行緒池(扯到執行緒分配資源的程序,和行程分配資源程序的區別)
13.GC內核清理用什么演算法,老年代有什么演算法?
14.TCP 三次握手四次揮手,第一次和第三次如果沒收到回應會怎樣?
15.MVP和MVVM有什么區別,那種用的多

騰訊
騰訊一面
1.構造方法有哪些?多載與重寫的區別?
2.執行緒有哪些狀態?
3.WebView安全問題,做過WebView性能優化嗎
4.RecyclerView 快取結構
5.RecyclerView回收復用機制,回收什么?復用什么?回收到哪里去,復用從哪里拿?
6.Handler休眠是怎樣的?epoll的原理是什么?如何實作延時訊息,如果移除一個延時訊息會解除休眠嗎?
7.手勢操作ActionCancel后怎么取消
8.熟悉AIDL?支持哪些資料型別?說說oneway的作用?怎么理解單向呼叫?
9.說說https怎么防止被抓包吧

位元組抖音(offer)
位元組技術面
1.介紹一下你們專案的架構
2.Rxjava是怎么實作執行緒切換的
3.Rxjava自定義運算子
4.ARouter的原理
5.ARouter怎么實作介面呼叫
6.ARouter怎么實作頁面攔截
7.MVP怎么處理記憶體泄漏
8.OkHttp怎么實作連接池
9.如果讓你來實作一個網路框架,你會考慮什么
10.你做過什么性能優化的作業
11.熱修復的原理,資源的熱修復的原理,會不會有資源沖突的問題
12.ViewPager中嵌套ViewPager怎么處理滑動沖突
13.android原始碼中有哪些設計模式
14.說說binder機制的原理
15.retrofit怎么做post請求
16.界面優化的一些方法,ConstraintLayout實作三等分,ConstraintLayout影片.
17.synchronize用法,volatile用法,兩者的區別和場景
18.做過行程保活嗎?
19.App 是如何沙箱化,為什么要這么做?
20.講講 bindService 的程序,你當初是怎么優化后臺服務行程的?
21.弱網環境你如何做的網路優化?
22.ConcurrentHashMap 的實作原理
23.Kotlin協成
24.flutter有上手過嗎
25.MVP與MVVM有什么區別
26.用回圈的方式去實作一個先序遍歷,說的一些方案不用寫代碼,
27.一道兩個鏈表的相加問題,思路+偽碼實作(這里和阿里不一樣,因為是牛客的平臺,其實編碼體驗沒有特別好,面試官讓我用偽碼來實作思路就可以了)
28.反問
位元組hr面
1.為什么考慮換一份作業?
2.在你們公司這幾年感覺怎么樣?
3.在這幾年里,你有做過什么覺得最有價值的作業
4.對位元組的印象是怎樣的
5.你有什么要問我的嗎?目前有幾個offer,傾向性是怎樣的?
備戰金三銀四
下面給大家分享一份 《Android開發2020年度面試真題合集》
該面試寶典不僅收錄了本人親身面試遇到的問題,還收錄了從一些朋友那里收集過來的問題,在以后的作業中本 人也會不斷的更新和充實該面試寶典,當然也希望大家能夠多多奉獻比較優質的面試題,
不僅展示了常見的面試問題以及回答技巧,還詳細講解了每一道題所包含的知識點,讓每個程式員不僅知其然,更知其所以然,
由于篇幅原因,下面以截圖展示部分內容,如有需要以下完整學習筆記PDF,可以點贊+評論支持下打工人老弟,點擊這里免費自取!
正文總共分為6個部分:
- Java 基礎(★★)
- Java 高級(★★)
- Android 基礎(★★★)
- Android 高級(★★★)
- Android 專案(★★★)
- 專案面試常見問題(★★★)
一、Java 基礎(★★)
面向物件思想
多型
例外處理
資料型別
Java 的 IO
集合
Java 多執行緒

Java 高級(★★)
Java 中的反射
Java 中的動態代理
Java 中的設計模式&回識訓制
Java 的類加載器

Android 基礎(★★★)
Android 基本常識
Activity
Service
BroadCastReceiver
ContentProvider&資料庫

Android 中的布局
ListView
JNI & NDK
Android 中的網路訪問
Intent
Fragment

Android 高級(★★★)
Android 性能優化
Android 螢屏適配
AIDL
自定義控制元件
Android 中的事件處理
Android 簽名
Android 中的影片
網路協議
其他

專案面試常見問題(★★★)
- 開發周期
- 專案中遇到的難題
- 專案中最大的識訓
- 專案是如何上線的
- 專案是如何盈利的
- 繪制專案架構圖
- 專案開發流程
- 你在專案中的角色
- 你負責專案中的哪些模塊
- 講講你負責模塊的具體實作
- 專案中都用到了哪些第三發框架
- 有沒有自己寫過框架
- 業余時間你是如何提高自己(學習)的
- 有沒有自己的技術 blog
- 你的職業規劃
- 為什么離職
- 為什么選擇我們公司
- 說說你們專案的亮點和不足
- 你們的專案是如何保持風格一致的
- 專案架構是如何搭建的
- 螢屏適配是如何解決的
- 都看過哪些原始碼
- 專案版本是如何升級的
- 用的什么版本控制工具
- 你能獨立開發嗎
- App 跟服務器是如何互動的
- 需求檔案寫過嗎
- 介面檔案寫過嗎
- 云服務器都用過哪些
- 第三方平臺都用過哪些
簡歷+社招解答+經典HR面試決議
以上是整理總結的Android中高級面試遇到的真題決議,希望對大家有幫助;同時很多人經常也會遇到很多關于簡歷制作,職業困惑、HR經典面試問題回答等有關面試的問題,同樣我也搜集整理了全套簡歷制作、金三銀四社招困惑、HR面試等問題決議,有疑問,可以提供專業的解答,

對于Android開發的朋友來說應該是最全面最完整的面試資料,為了更好地整理每個模塊,我參考了很多網上的優質博文和專案,力求不漏掉每一個知識點,很多朋友靠著這些內容進行復習,拿到了BATJ等大廠的offer,這個資料也已經幫助了很多的安卓開發者,希望也能幫助到你,
由于篇幅原因,如有需要以上完整學習筆記PDF,可以點贊+評論支持下打工人老弟,點擊這里免費自取!
文末
我一直覺得技術面試不是考試,考前背背題,發給你一張考卷,答完交卷等通知,
首先,技術面試是一個 認識自己 的程序,知道自己和外面世界的差距,
更重要的是,技術面試是一個雙向了解的程序,要讓對方發現你的閃光點,同時也要 試圖去找到對方的閃光點,因為他以后可能就是你的同事或者領導,所以,面試官問你有什么問題的時候,不要說沒有了,要去試圖了解他的作業內容、了解這個團隊的氛圍,
找作業無非就是看三點:和什么人、做什么事、給多少錢,要給這三者在自己的心里劃分一個比例,
最后,祝愿大家在這并不友好的環境下都能找到自己心儀的歸宿!

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/261764.html
標籤:其他
上一篇:ItemDecoration用法
下一篇:在水一方地圖
