字节抖音Android客户端22届春招实习123hr面面经
抖音商业化(广告),base上海
4月27日简历发给牛客上的内推小哥,28号就接到hr约第一场面试,字 节 n b
一面·50分钟·4月30日16:00
SQLite:升级数据库,已有数据的处理
复盘:写SQL
动画:属性动画和补间动画的区别
IPC:有哪些,ContentProvider细讲
AIDL细讲,AIDL方法是在服务端线程池中调用的,这个线程池是服务端自己创的吗
SharedPreference:多进程模式
答:不要用来跨进程。解释SP线程安全但是进程不安全的原因,虽然确实可以在私有进程共享data目录的情况下跨进程。
此外还有FLAG_MODE_MULTI_PROCESS这个概念,是面试官提的,但官方也不推荐使用。
JetPack:架构组件和MVVM架构的关系,ViewModel怎么实现保存恢复数据,LiveData的onChanged回调时机
Java:口述Java实现LRU,LinkedHashMap底层
OKHttp:异步请求的执行流程,七层拦截器(责任链模式)梳理。异步流程中准备队列的进入条件
设计模式:手写单例双重检测,其中volatile的作用
初始化的三步是被重排成了132,别的线程在2之前读了有读到null的风险
算法:给一个数组,判断是否符合二叉搜索树的后序遍历,剑指题目
做力扣去了给漏了,试探换题,面试官同意换到前中数组构造二叉树
一面小哥挺温柔的,口头二面
五一天天查漏补缺...
二面·75分钟·5月10日16:00
很强的面试官...摄像头保持全程只露一个犀利的头顶
开始:非科班的学习过程
SharedPreference:commit和apply方法的区别
序列化:Serializable和Parcelable,Parcelable轻量的原理是什么(?)
绘制流程:三个流程的发挥空间都很大,分别是启动流程、绘制流程、事件分发流程
绘制流程可从PhoneWindow、ViewRoot、DecorView,VSYNC、Choreographer,
讲到三大过程(measure、layout、draw)细节
ANR:如何自己做ANR监测,设计一下
复盘:Looper.Printer
ANR机制,开始说在Activity的生命周期方法里不超过5秒,被面试官卡了一会儿
应该覆盖到Activity全程的监测
LeakCanary:原理,用了个什么队列
计网:TCP特点
可靠传输怎么保证,答了握手挥手,连续ARQ,流量、拥塞控制
三次握手为什么不是两次
JVM:运行时内存区(答全),垃圾收集(标记算法,回收算法),分代收集使用相应算法的原因
类加载:Class.forname和ClassLoader.loadclass的区别(?)
算法:快排,写用例测试
聊天:可以一直实习到毕业吗(被掏空)
没有反问,口头3面
因面试官临时生病,延后一周。
老哥们都要注意身体啊,实习面试期间两次遇到面试官生病了!
三面·70分钟·5月20日16:00
项目:构思,说到项目有参考设计思路,参考了Google官方的MVP demo:todo(急 中 生 智)
MVP:细问,三个层次以外的工具放到哪里,怎么实现组件间数据共享
复盘:各厂终面的大ld都爱问项目和架构
Glide:图片框架就是使用Gilde吗,有自己思考吗(源码)
应用启动流程:详细,同样发挥空间很大,三个流程都建议好好准备
把跟AMS的IPC,ActivityThread,Application的创建,Activity的创建都讲清楚的话,非常加分
非技术:
什么时候能来,能实习多长时间
最有成就感的一件事
本以为是问项目亮点,而面试官特意要听生活中的
考研:问了详细的过程,在这个过程中如何实现和调整自己的计划
工作面试:如何总结提升
在这些过程中如何排解压力
复盘:字节3面应该有固定的非技术问题安排,后面发现面试官即使赶时间也会补一两个非技术问题
算法:36进制加法
字节3面多原创题(不过因为原创题库更小,实际重复率更高,关注面经的话更容易押中)
反问:
部门业务:抖音广告
培养机制:有导师,有课程;有项目经验的同学可以直接从小bug开始
总体来说个人遇到的面试官都还挺好的(客户端ld普遍善良~)
朋友后端碰到过全程黑脸 面无表情的,算法题卡住嘲讽的...
约面试和通知结果真的很快,业界良心!
但因为有三轮,中间又不巧耽搁了,流程还是走了快一个月