2020年阿里巴巴Android面经:拿到字节跳动offer后,简历又被阿里捞了起来

2020-07-30 09:56:15 浏览数 (1)

前言

阿里,我是在BOSS上投的简历,之前也投过一次,简历都没通过筛选,后来让前辈帮我改了一下简历,重新投另一个部门,获得了面试机会。5月15日,中午HR打电话过来预约了下午4点半面试,说会在线笔试,让我准备好。

一面:70分钟

突击电话面试

正思考着项目功能模块,阿里面试官打来了电话,开始了阿里一面。 阿里面试官自我介绍,介绍了5分钟左右,部门的情况,主要的业务。

提问开始:

  • 你是如何理解Android操作系统的。
  • 是否熟悉framework层,如果熟悉,那就对framework做个简介。
  • 是否熟悉多线程,如果熟悉,介绍下线程。
  • 对象锁和类锁是否会互相影响,会举例子让你判断锁的使用是否恰当,并说出原因。
  • 是否熟悉Lopper架构,如果熟悉说下其原理,如果你自己实现,你会怎么实现。这里主要考察阻塞消息队列原理,和其变形。
  • 自定义控件原理,及消息分发流程。
  • binder工作原理。
  • ActivityThread,Ams,Wms的工作原理。
  • 如果工作中需要修改framework,你如何寻找切入点。
  • 较为前沿的技术。如flutter方向

二面:50分钟(P9面)

早上面试官发来短信,约了晚上面试。

  • 问 i和i 区别
  • makefile文件代码,写代码
  • 隐藏与重写的区别
  • linux基本命令使用 如:如何查询帮助文档(man),如何查处文件(fiind),常用命令
  • 进程间通信有几种,效率如何
  • 什么是嵌入式实时操作系统, Android操作系统属于实时操作系统吗?
  • tcp/ip有几层
  • 一条最长的短信息约占多少byte?
  • p2p和SMTP分别在哪层
  • android中的动画有哪几类,它们的特点和区别是什么?
  • 多态概念(父类引用子类参数)
  • handler机制的原理
  • java写1 N的和
  • 数据结构与算法如排序,二叉树1
  • MVC概念(为什么有DAO层,什么作用)
  • GC回收机制
  • 说说mvc模式的原理,它在android中的运用
  • android项目 自述
  • java的进程与线程维护
  • Activity的生命周期

三面:25分钟(P9交叉面)

面试官介绍

面试官介绍自己是中间件部门的,这轮是交叉面。 感觉面试官很和蔼,很有耐心。更多的是让我自己去讲述所学的知识。

  • 刚拿到你的简历,先做个自我介绍;
  • 项目相关,很多细节
  • 平时自己是怎么自学的(这就是全部的学习手段吗?)
  • 你是怎么找到相关的资料的
  • 平时用百度还是谷歌
  • 技术问题不是查谷歌更好一些吗?
  • 近一年,在学习和项目上比较困难的事情,怎么解决的,结果怎么样
  • 有和其他人合作项目的经历吗
  • 说一下你印象比较深,时间比较长,与他人合作的项目,你在其中负责的部分,成效如何,这个项目里最困难的部分,你如何解决的
  • 在学校期间压力最大的时间,遇到了什么事情,你是怎么解决的
  • 平时有什么兴趣爱好
  • 简历是主动投的,还是百度自己找过去的,为什么要投百度简历,你能为百度带来什么
  • 对城市有什么倾向吗
  • 有收到其他offer吗,或者有面过其他家吗
  • 如果两家公司都给了offer你会怎么选择,为什么这么选择

反问

  • 公司目前的技术栈(百度APP极速版,双端开发维护)
  • 职业发展方面有什么建议(应届生不要太看重钱,期望不要太高,不要浮躁)
  • 后面还有流程吗(可能会有HR面)
  • 有啥评价(端上经验是张白纸,可能连门都没入<恐怖事件>)

感受:

其实我投简历的时候,都不太敢投递阿里。因为在阿里一面前已经过了字节的三次面试,投阿里的简历一直没被捞,所以以为简历就挂了。

特别感谢一面的面试官捞了我,给了我机会,同时也认可我的努力和态度。

对比我的面经和其他大佬的面经,自己真的是运气好。别人8成实力,我可能8成运气。

所以对我而言,我要继续加倍努力,弥补自己技术上的不足,以及与科班大佬们基础上的差距。希望自己能继续保持学习的热情,继续努力走下去。

最后

不知不觉自己已经做了几年开发了,由记得刚出来工作的时候感觉自己能牛逼,现在回想起来感觉好无知。懂的越多的时候你才会发现懂的越少。

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2020面试真题解析,我把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 诸多细节

还有 高级架构技术进阶脑图、Android开发面试专题资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。

0 人点赞