有赞Android 五面凉经
有赞一面(2-24)
- 自我介绍
- TCP/UDP 三次握手、比较TCP、UDP,TCP是如何实现可靠传输的(序号、确认、重传机制)
- HTTP版本
- HTTPs加密过程
- 面向对象
- 设计模式(引申出锁)
- 事件分发机制->场景题:纵向的列表RecycerView中的横向滑动的ViewPager,如何处理事件的分发
- Handler
- MVP、MVC
- Sychronized底层如何实现
- 项目->Flutter
- 大文件如何读入排序,然后统计出出现最多的数值。
- 排查闪退
- 容器类介绍和存在的问题
- 内存泄漏
- 数据缓存方式
- 框架
- 反问
- 线程池
- 动态代理和静态代理(不清楚)
有赞二面(3-1)
- 为什么用Flutter
- Flutter 如何和原生通信
- Flutter 前景你怎么看
- 这里问了一个什么什么Quos还是Aquos,压根听不清,直接答了不会。
- Kotlin和Java的区别(答了语法糖和多线程方面)
- 引申出线程池
- 多线程间互斥,悲观锁(Sychronized)、乐观锁(CAS)
- 可见性和原子性
- 引申出Volatile + 指令重排
- 懂哪些架构,MVP、MVC(答了MVP和MVC,MVVM不清楚),MVP的生命周期如何管理
- 有没有了解过Jetpack
- 问项目,外设和手机是否有连接不稳定的情况?
- 最近在读那些书?
- 引申出哪些设计模式:单例(线程安全和非线程安全,第三种线程安全的单例没答上来、外观模式、观察者模式、静态代理
- HashMap 1.7和1.8的区别,Size的限制、初始大小。
- 自己写的后端?
- 学过前端?(Vue.js)
- 算法题:怎么判断链表是否成环。
- 反问
有赞三面(3-4)
- 自我介绍
- Flutter
- 看之前面试官问了你Flutter,问了什么,那你能说说MicroTask吗?
- 什么时候接触的Android开发(移动端开发)?
- Flutter和Android原生混编各自的侧重点是什么?
- 为什么学Android开发?
- 平时如何学习的?
- 给自己评价三个标签?
- 自己的一个优点、一个缺点。
- 水塘、蚂蚁问题。。。
- 场景题:Token在本地如何存储?加密?Token有几个?
- 学习一门技术流程是啥?
- 你觉得你的代码写的漂亮吗?不的话,你是怎么改正(解决的?)
- 你觉得一篇漂亮的代码最重要的是什么?
- 看过啥书?
- 如何抗压?
- 《看过的某本书名》印象最深的是啥?
- 反问
有赞四面 HR面(3-5)
就是一些个人方面简单的问题,不涉及项目,问完告知3天有结果。但是3天后去问,说HC紧,再等一周。
有赞五面(3-19)
一周后,问HR结果,HR问有其他面试进行的流程,答了有几家公司要去现场面试,HR:“网上谈的不能完全了解你,希望也能现场面试”。
从2-20简历投入到3月19日,整整一个月的时间,迎来了第五轮面试。
- 自我介绍
- 为什么项目中用MQTT,为什么不用HTTP
- 设计一个图片加载库
(提到了生命周期关联、网络请求管理、图片缓存、图片尺寸适配几个方面,但是具体到细节就答得乱七八糟的,太久没看了。。)
- 反问
(准备的问题都问完了,真想不到问题了)
3-24 面试失败,进入人才库
总结
持续了一个月零四天的面试,前三面体验不错,面试官很专业,问题循序渐进,深入浅出。
到HR面后开始节奏不对了,HC紧张等等各种理由,推迟告知结果。
#校招##有赞##安卓工程师#