3年Android开发再战快手,心有不甘狂刷一个月面试题,成功打
2020-08-21 本文已影响0人
不正经的创作者
前言
说一下我大概的情况。渣本毕业,工作已经有快3年了,从初中就开始玩快手,快手真的是陪伴我很多年。大学主学的计算机软件专业,所以,入职快手是我大学时期给自己定的小目标。
在学校,专业学的算中上的水平,课本知识和老师讲的东西基本消化的八九不离十,也自己动手写过属于自己APP,参与过一些社团协会共同开发的项目。
刚毕业时候,快手也有校招,满腔热血的参加了,准备了好久,结果还是没有被录用。当时,挺失落的吧,但是也并没有放弃我进快手工作的梦想。
7月份的时候一位学长知道我非常想进快手,特意告诉我快手有内推名额,问我要不要来试一下,我一口直接答应,然后把手里的工作辞掉了,破釜沉舟一把,宅家里半个月复习。将学校所学知识点,以及工作3年的积累经验都系统的归纳整理了起来。再过一遍,然后就是刷面经,面试场景练习等等等。
世间所有的付出终是有回报的,努力的耕耘,也没有被辜负。从离职到入职,一个月时间,顺利的入职了快手,也是要感谢网友们提供的宝贵经验,所以整理了一下,把我的面经整理一下也分享出来给大家。
一面
- 自我介绍
- JVM内存分布
- Binder机制?Binder是怎么样实现Client、Server和ServiceManager通信的?
- HashMap底层、扩容、ReHash过程
- 锁?锁的自旋、公平锁非公平锁,CAS有了解吗?
- ViewModel的生命周期?
- ClassLoader机制?为什么要双亲委派
- Android中一个View的显示渲染过程,自定义View的时候需要避免什么操作?
- Activity、Window、View之间的关系
- 实现一个单例有哪些方式?双重检验锁为什么要两次检验?为什么要加Volatile
- Volatile有啥用
- ANR在什么情况下会发生
- Handler机制、为什么Looper不会阻塞线程
二面
- Acitivty的四种启动模式与特点
- 广播使用的方式和场景以及广播的几种分类
- FrameLayout 、 LinearLayout 、 RelativeLayout 各自特点及绘制效率对比
- Android中的MVC、MVP模式
- App的启动过程
- Android怎么加速启动Activity
- Bitmap的四种属性,如何加载大图(inJustDecodeBounds)
- Touch事件分发机制和冲突处理
- Android IPC:Binder原理
- Class文件结构(常量池)
- Java内存模型结构(主内存和工作内存)及操作,原子性可见性和有序性等
- 启动线程和安全的终止线程。(interrupt)
- TCP可靠传输原理实现(滑动窗口)
- Cookie与Session的作用和原理
- Https加密原理
三面
- TCP/UDP的区别,有看过具体报文的信息吗
- 你觉得开发一个SDK,需要注意哪些地方,有没有做过SDK性能测试
- 有了解过音视频的编解码吗
- 开放题:让你加载一个200M左右的GIF,如何实现及优化,不可降低画质
- 反问环节
HR面的话就不列举啦,就是一贯的聊一些职业规划,了解一下你的性格特点之类的。
小福利
前面我说破釜沉舟宅家半个月刷题刷面经,现在我拿到Offer了,把这份好运分享给近期有面试和想在技术道路上继续精进的朋友。也是希望可以帮助到大家提升进阶
内容包含:Android学习PDF+架构视频+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 这几块的内容
如果你有需要的话,可以点击获取!
现在入职快手也有快一个月时间了,整体感觉还是很棒的,同事们都超棒的,超喜欢这里,打工是不可能打工的,这辈子都不可能打工的.....除非在快手hhhh,真香~
看到最后记得一键三连呀~也祝各位能早日拿到心仪的Offer!