备战阿里面试一年半顺利通过二面,面对突如其来的疫情,让我的阿里三面搁浅ing(1)

63 阅读4分钟
  • 介绍自己做的项目

按照自己熟悉的项目流程框架去逐步介绍,项目主要做了什么,用了什么,这里一定要讲自己熟悉的部分,因为面试官会根据你提到的技术点展开后续的问题,千万不要给自己挖填不了的坑。我这边介绍的时候提到了开发,所以后面面试官问了好几个开发 的问题,所以一定要说自己熟悉的技术。

  • 项目中最有难度和记忆最深刻的项目

这个问题按照实际去回答就好,可以说自己做过的但不一定是最难的,可以是自己最熟悉的,觉得有亮点可以说的,避免讲不了几句就没话可说的情况。

  • 开源框架 – Volley,Gilde,RxJava源码分析ConcurrentHash,以及线程安全等问题。

  • 底层红黑树是什么?什么是红黑树

这个问题就是对上面问题一个很好的补充,Hashmap 在 Java8 的时候,会将链表在长度大于8的时候进行链表转红黑树,那么同样这也是一个延伸问题。红黑树:是一种平衡二叉查找树,

  • 常用排序算法和时间复杂度

  • 快排的实现原理

双指针,建议在纸上自行手写实现,这样才容易记牢。

  • Android内存优化

  • Android中的类加载器

  • Android中的动画有哪几类,它们的特点和区别是什么

  • 热修复原理

  • 图片加载如何避免OOM

  • 你觉得你的能力大概在什么方面?

一面相对来说是比较偏技术细节的,十分注重原理和源码解析。这里有一份互联网一线大咖整理的源码PDF手册,我也从中获益匪浅。现在把它分享出来。

下载地址:shimo.im/docs/3Tvytq…

二面

=====================================================================

二面的电话,同样还是那么的突如其来。。。二面的内部比较宽泛,偏项目和个人发展,没有标准答案,大家自行思考即可。

  • 介绍自己,并介绍一下自己做的项目

  • 自己主要负责哪块内容,其中印象最深刻的项目是什么

  • 项目中遇到的最难的问题是什么,怎么解决的,

  • 项目在生产上有没有遇到过问题,是什么样子的问题以及如何解决的

  • 有没有因为 bug 或者其他原因导致的线上问题

  • tcp udp区别

  • framelayout relativelayout有什么区别

  • 两个线程交替打印

  • 三次握手 第二个包丢了会咋样?

  • 对android什么地方最熟悉

  • bitmap存储的位置 安卓几个版本有什么不同?

  • 本人觉得工作这么久对业务有什么重大的贡献

  • 项目小组有多少人,个人觉得自己在小组中是什么样的位置

  • 工作这么久觉得业务上有什么缺陷,怎么优化

  • 是否有参与项目架构的讨论和设计

最后

针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、架构师课程、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!

资料领取:点赞免费获取Android IOC架构设计

领取获取往期Android高级架构资料、源码、笔记、视频。高级UI、性能优化、架构师课程、混合式开发(ReactNative+Weex)全方面的Android进阶实践技术,群内还有技术大牛一起讨论交流解决问题。