2021 新鲜面经,蚂蚁内部转岗 Android 面试分享,深夜思考
问题:
主流图片加载框架的对比,Glide 优化原理及设计思想。
图片加载框架封装设计,为什么这么设计。
网络库封装设计,OKHttp,Http 及 Https 相关知识点。
对 MVC、MVP、MVVM 的理解。
动态加载方案的原理,Tinker 原理、DynamicLoadApk 原理,及两者对比。
本轮面试考核的侧重点在于一些开源框架的原理的理解及设计模式的选择,说到设计模式,我又想提一点:按需设计,千万不要过度设计
第二轮 技术面 (面试官:P7)
问题:
JSSDK 如何封装,为什么这么设计。
RN、Weex 等跨平台 UI 框架原理。
Flutter 实现原理,及与 RN 的性能对比,还有哪些弊端。
Android 动画相关知识。
Android 9.0 新特性及适配。
碎片化屏幕适配。
卡顿优化、内存优化、网络优化、电量优化。
本轮面试更多的考核跨端开发的能力及性能优化的理解,关于性能优化这件事情,我个人认为,并不是说内存占用越少越好,奔溃占比也需要一个衡量的标准。而所有大优化的前提都在于项目发展所需,因为要考虑到投入成本问题及风险的把控。
第三轮 项目组老大面谈(面试官:P8)
本轮主要以聊天的方式进行,比较轻松。主要聊到内容:
考核做过的项目的了解,包括项目监控数据,行业的了解,对标产品了解。
前后端开发能力。
对目标项目的了解程度,并向我介绍。
对项目行业及产品的理解。
考核对数据的敏感度及分析能力。
对工作地点的看法。(由于本次转岗对我来说工作地的变动比较大)
通过这段时间的接触和这一次对话,增进了彼此的了解,也更加让我确定了这正是我想要的团队,满腹激情,同时又非常有想法和使命感,做的事情又非常有意义。
第四轮 业务线大佬(面试官:国内某知名前端大咖 P10)
问题:
对 Android 能力一些简单的考核。
过往经历的团队,并在团队中扮演什么角色
。
考核学习能力,自我驱动能力。
数据分析能力和抗压能力。
技术追求及职业发展。
对目标项目及行业的了解及看法。
本轮面试过程,个人感觉面得还不够好,面对大咖还是有一些压力。好在大佬在聊天的过程中并没有给我过多压力,非常亲和,所以聊得也很开心。
第五轮 HR 面谈
问题:
转岗理由。
对这次变动的看法。
如果这次转岗不成功,你怎么想。
有没有去尝试外部的机会,为什么不考虑某某公司。
工作地点的考虑。
职业生涯的规划。
自我驱动及抗压能力,遇到的最困难的事怎么去处理。
价值观考核。
评论