Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第1张图片

大厂难进,阿里作为众多程序员的圣地,进去更是难上加难。

虽然阿里对外招聘条件写的比较宽松,实际上对年龄和学历的要求还是挺严格的,除非你业余做了很牛的事情,比如自己开发了个牛逼的软件,对某些技术有深度研究什么的…

我工作快5年,最近很幸运的拿到了阿里offer,作为一个大专学历的我已经很知足了。

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第2张图片

在这次面试之前,我根据阿里招聘的岗位要求投了很多其它公司类似的岗位进行面试积攒经验,像华捷艾米、信雅达、小米、美团等,有些被虐的很惨,也拿到了几个offer,犹豫了一下还是决定继续冲击阿里!

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第3张图片

可以看到阿里学历一般都要求本科、计算机相关专业;对底层原理的要求较高

我自己总结了一下,能拿到这次offer原因主要有两点,一是多面试多总结,二是要想办法和面试官成为朋友

面试失败,好的面试官会指出你的不足,提出一些针对性的学习建议。这种面试官,一定要留个联系方式!我一般当天晚上会发一条消息表示感谢;自己能力有所提升之后,再给面试官发一条消息感谢。几乎所有再次收到消息的面试官都愿意邀请我去面试,就算他们部门不招人,也会主动把我的简历推荐给其它部门。

接下来给大家分享一下我面试阿里的面试真题吧,希望对准备找工作的朋友有所帮助!(这些题目的相关答案大都可以在文末的资料中找到)

阿里一面:

1.apk启动流程
2.你刚讲到了handler,那你说一下你对handler的理解,怎么用java实现一个handler?
3.内存优化了解多少,什么情况下会发生内存泄漏。答到(四种引用链关系),再深入就是java内存模式,类的内存分布
4.说一下断点续传和多线程下载怎么实现。
5.类的动态加载;classLoader的双亲委托机制
6.让你设计一个图片加载框架你会怎么设计
7.你做的应用商店技术指标和业务指标是哪些
8.对下载和安装指标提高做了哪些优化

阿里二面:

1.为什么选用Fresco作为图片加载框架
2.你用CC框架组件化,为什么不选择阿里的Arouter框架,CC有什么好处。使用过程中用到什么问题。
3.你平时怎么做性能优化的?你用到哪些工具做性能优化,冷启动怎么优化
4.插件化你懂吗?热修复、插件化与组件化的区别是什么?
5.各大插件化框架有什么不同?
6.在加载阶段,虚拟机做了哪些事?
7.你平时怎么自己学习新技术

阿里三面

1.你觉得你做的项目最有挑战性的是什么
2.你是怎么做技术选型的,说一下为什么选用CC而没有选ARouter,你在用组件化框架的时候有没有遇到什么问题
3.MVC和MVVM,MVP说一下你的理解
4.你对你负责的项目在性能优化上做了哪些努力
5.你对自己的未来职业规划是怎么样的从阿里面试官提的这些问题,可以看出,现在面试问的很多东西,都是原理。

面试总结及建议

每一次Android面试,其实都是一次学习机会,是对自己技术知识栈的梳理、考核、复盘。我们应该抱着学习的态度,认真对待,找到自己比较薄弱的环节,尽快去查漏补缺学习巩固。对于面试来说,其实也没有太多的技巧可言,面试官主要看重的就是个人能力,无非就是两个方面:

  • 技术广度
  • 技术深度
建议
  • 主要针对非科班同学:最好系统的看下操作系统和计算机组成原理,因为看完操作系统后才能系统的认识计算机的原理,能更好的从底层去认识上层
  • 多看源码,包括Java层的代码在JVM中的实现源码(如synchronized的实现源码),Android Framework的源码(更好认识Android层的实现),Android开源库源码(OKHttp,Retrofit,RxJava,EventBus,Glide,Gson等等,更好的学习优秀开源库源码,做到用的熟,懂原理)
  • 多问自己为什么,比如两个技术点优缺点分别在哪,各自的使用场景(如单例模式下饿汉与懒汉的优缺点,使用场景),这样才能更契合实际应用开发,针对不同场景使用不同技术点
  • 及时复盘总结面试中遇到的问题,分为两方面,一是知道但不能深入的,这种需要继续多看多总结,另一种是没接触过的,这种可以先了解下,万一面试又遇到了,可以回答下了解到的,之后再去深入总结(毕竟时间有限,不可能面面俱到,只能不断学习总结)

以下是自己结合自己的面试整理出来的,当然并没有完全覆盖到所有的Android知识点,大家可以结合自己的日常项目和一些书籍自己在整理汇总。

最后看面试题来举一反三(刷题刷题刷题,重要事情说三遍)

Android知识

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第4张图片

对于Android这块,从打包到安装,再到一个App的启动,到一个页面显示出来内容,再到我们的手指去触摸屏幕对屏幕带来了改变,对这个流程可以跟进相应的源码,顺着这个流程来自己捋一遍,即使不是为了准备面试,作为Android知识的储备对开发工作也是有很好的提速作用的。当把上述流程梳理完成,再考虑对于其中每一个环节的各个击破,对流程的把控对于我们对应用进行系统性的优化也是非常有价值的。

Java知识

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第5张图片

Java这块除了对一些基础知识的考察之外,主要是对于Java虚拟机,和多线程场景下对于锁的控制,还有对于其中集合类的一些相关实现和优化的点。流程上是对于一个.java文件如何被编译成.class文件,然后JVM如何去加载这个二进制流并进行执行,内存如何做分配,分配之后,如何为对象分配空间,执行字节码。

算法与数据结构篇

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第6张图片

算法这一块建议把《算法》查找与排序读以下,同时跟着《算法导论》学习一下时间,空间复杂度的计算,常见的题目类型为图上这些,在我之前的博客中有写动态规划一期,包教包会。

计算机网络

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第7张图片

计算机网络中常问的方式是从浏览器中输入百度到页面返回的流程,顺着这个流程拓展出来DNS解析,TCP连接,Http,Https。

学习视频:

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第8张图片

3.刷面试题

工作5年,虽然清楚现在流行什么技术,但对于互联网大公司会面试一些什么还真是不太清楚,所以面试之前刷一刷面试题还是很有必要的,能够做到举一反三。一线互联网的面试题,我整理了近三年的,内容还真不少。

Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题_第9张图片

总结

这次能够顺利入职阿里,可以说是运气和实力参半,但我一直持有的一个观念就是:好运永远是留给有准备的人。

所以,作为一名技术人,对大厂有着执念,那就要落实下来,相信自己付出是会有所回报的。在这,我也祝大家在接下来的金九银十里,面试顺利,过关斩将,拿下offer。

以上文章里写到的所有文档资料,均免费分享,有需要的关注我并私信,或者直接点击文档链接自行下载~

你可能感兴趣的:(Android开发5年,大专学历,幸运拿到阿里offer,给大家分享一下阿里三面的面试真题)