本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)

前言 本黄16年渣院本科毕业,回想一下毕业也有四年多了,毕业后一直辗转于一些效果公司做开发。想必和我同样处境的小伙伴,都有着咸鱼翻身梦,一直想去大厂康康。就蹭蹭,不进去也行啊。本计划今年年初金三银四的时候去碰碰运气,正巧碰上疫情,计划也就被搁置了。
疫情稳定下来后,便开始慢慢的为跳槽做准备了,到金九银十的时候,先去面了些各种大小规模不一样的公司,最后才选择了几家心仪的大厂投简历、面试。所以特此过来将自己的面试经验分享出来,希望能给即将面试的朋友做下参考。
简历
首先是简历,一般找一个模板,写清楚掌握的技能和自己的项目经历即可。
简历建议2页就行,太长太短都不好。
建议用掌握与熟练掌握取代了解与精通。
这里教给大家一个小套路,可以提高收到面试邀请的机会。那就是在你简历的左上角印上准备面试公司的Logo。面试官在一堆简历中突然翻到一张印着自己公司Logo的简历,不免会多看你的几眼。
面经
接下来一些公司的面经了,分享出来供大家参考。
DOUYU 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

斗鱼一面 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有什么区别,那种用的多
Bilibili(上海) Bilibili是我一直心心念念想要进的公司,可以第二轮就挂掉了…
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

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有哪些可以优化的地方
ByteDance 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

字节一面 0.算法有点题比较复杂,记不起来了
1.构造方法有哪些?重载与重写的区别?
2.线程有哪些状态?
3.WebView安全问题,做过WebView性能优化吗
4.RecyclerView 缓存结构
5.RecyclerView回收复用机制,回收什么?复用什么?回收到哪里去,复用从哪里拿?
6.Handler休眠是怎样的?epoll的原理是什么?如何实现延时消息,如果移除一个延时消息会解除休眠吗?
7.手势操作ActionCancel后怎么取消
8.熟悉AIDL?支持哪些数据类型?说说oneway的作用?怎么理解单向调用?
9.说说https怎么防止被抓包吧
Tencent(offer) 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

腾讯技术面 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.反问
腾讯hr面 1.为什么考虑换一份工作?
2.在你们公司这几年感觉怎么样?
3.在这几年里,你有做过什么觉得最有价值的工作
4.对腾讯的印象是怎样的
5.有女朋友吗,对搬来深圳什么想法…
6.你有什么要问我的吗?目前有几个offer,倾向性是怎样的?
总结 【本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)】上面面试的问题并不是面试官提前准备好了,而是从简历中查看你做哪些项目,在中间抽取项目中设计到的那些技术点进行提问,看你是否能有比较好方法解决。我个人建议是面试前不要随随便便找题刷,而是要注重自己负责过的项目中设计到的技术,以及在过程遇到的技术问题,自己进行归纳总结;再去找相关的题进行参考。

学习资源分享
《Android八大模块进阶指南》
这份笔记一共8大模块、729个知识点,3382页,66万字,可以说覆盖了当下Android开发最前沿的技术点以及阿里、腾讯、字节跳动这些大厂面试时最看重的技术。笔记都是根据高级工程师知识体系来整理的,需要的朋友点击这里免费领取,保证免费分享!
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

相对于我们平时看的碎片化内容,这份笔记的知识点更系统化,更容易理解和记忆,是严格按照知识体系编排的。
一、架构师筑基必备技能 1、深入理解Java泛型
2、注解深入浅出
3、并发编程
4、数据传输与序列化
5、Java虚拟机原理
6、高效IO
……
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

二、Android百大框架源码解析 1.Retrofit 2.0源码解析
2.Okhttp3源码解析
3.ButterKnife源码解析
4.MPAndroidChart 源码解析
5.Glide源码解析
6.Leakcanary 源码解析
7.Universal-lmage-Loader源码解析
8.EventBus 3.0源码解析
9.zxing源码分析
10.Picasso源码解析
11.LottieAndroid使用详解及源码解析
12.Fresco 源码分析——图片加载流程

本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

三、Android性能优化实战解析 腾讯Bugly:对字符串匹配算法的一点理解
爱奇艺:安卓APP崩溃捕获方案——xCrash
字节跳动:深入理解Gradle框架之一:Plugin, Extension, buildSrc
百度APP技术:Android H5首屏优化实践
支付宝客户端架构解析:Android 客户端启动速度优化之「垃圾回收」
携程:从智行 Android 项目看组件化架构实践
网易新闻构建优化:如何让你的构建速度“势如闪电”?

本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

四、高级kotlin强化实战 1、Kotlin入门教程
2、Kotlin 实战避坑指南
3、项目实战《Kotlin Jetpack 实战》
  • 从一个膜拜大神的 Demo 开始
  • Kotlin 写 Gradle 脚本是一种什么体验?
  • Kotlin 编程的三重境界
  • Kotlin 高阶函数
  • Kotlin 泛型
  • Kotlin 扩展
  • Kotlin 委托
  • 协程“不为人知”的调试技巧
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

五、Android高级UI开源框架进阶解密 1.SmartRefreshLayout的使用
2.Android之PullToRefresh控件源码解析
3.Android-PullToRefresh下拉刷新库基本用法
4.LoadSir-高效易用的加载反馈页管理框架
5.Android通用LoadingView加载框架详解
6.MPAndroidChart实现LineChart(折线图)
7.hellocharts-android使用指南
8.SmartTable使用指南
9.开源项目android-uitableview介绍
10.ExcelPanel 使用指南
11.Android开源项目SlidingMenu深切解析
12.MaterialDrawer使用指南

本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

六、NDK模块开发 1、NDK 模块开发
2、JNI 模块
3、Native 开发工具
4、Linux 编程
5、底层图片处理
6、音视频开发
7、机器学习
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

七、Flutter技术进阶 1、Flutter跨平台开发概述
2、Windows中Flutter开发环境搭建
3、编写你的第一个Flutter APP
4、Flutter开发环境搭建和调试
5、Dart语法篇之基础语法(一)
6、Dart语法篇之集合的使用与源码解析(二)
7、Dart语法篇之集合操作符函数与源码分析(三)

本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

八、微信小程序开发 1、小程序概述及入门
2、小程序UI开发
3、API操作
4、购物商场项目实战……
本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

全套视频资料:
一、面试合集 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

二、源码解析合集 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

三、开源框架合集 本科Android开发小伙的春招面试逆袭之旅(斗鱼、字节、bilibili、腾讯)
文章图片

篇幅有限,需要《Android开发八大模块进阶指南》的小伙伴点击这里免费领取!保证免费分享!

    推荐阅读