阿里面试经历
第一次面试
盒马一面
- 三月中旬,接到盒马的电话面试邀请,约定在一周后的晚上7点进行第一轮电面,这次面试大概一个半小时,面试官先是问了项目,讲一讲最近的项目,然后如何设计的,在设计中遇到了什么,并且提出一些他对于这个设计的一些疑问,项目问完后,问的是技术,技术点主要是以下几点:
- 面试官:平时项目中有用到哪些中间件,能不能介绍下.我的回答:Dubbo,RocketMQ,Redis等等,但是RocketMQ,Redis这些仅仅只是应用,没有看过源码,对于其只是简单了解,Dubbo我就比较熟,现在也活跃在社区为Dubbo做一些贡献
- 面试官:如果让你自己实现RPC,你会怎么样去做?我的回答:注册中心(zk,etcd,nacos,redis),然后一个provider一个consumer,要实现网络通信,就需要netty/mina这种中间件来做网络通信,巴拉巴拉
- 面试官:那讲一下Dubbo你最熟悉的模块吧.我的回答:从dubbo的架构到服务注册发现调用,以及dubbo的spi机制,集群容错策略等等
- 面试官:对于NIO有了解过吗.我的回答:有,但是只是很简单的了解,没有深入阅读源码,这块还是不做展开吧(netty和NIO这块是我的弱项,问道这个真的很头大)
- 面试官:java的类加载机制和内存模型能够讲一讲吗.这个问题大概就不用展开了
- 面试官:介绍一下tcp/ip协议.我的回答:三次握手,四次挥手(这块由于当时紧张,就很简单的说了下,然后给面试官说突然有的反应不过来了,这个问题还是算了吧,面试官也就没有继续追问)
- 面试官:spring和mybatis有了解过吗.我的回答:有了解,但是没有深入源码,只能大概聊一下,没有dubbo那么熟(面试官也没有技术追问)
- 面试官:如何创建多线程,如何让多个线程在同一时间执行.这个问题也就不用展开了
- 后来就是mysql的一些索引优化,mysql的基础架构等等问题,最后面试官问我,有没有什么问题,我就问了下如果有下一面大概是什么时候有通知,面试官说最近忙,正常的话大概是一周左右,我说好的,就这样一面结束
盒马二面
- 周六在回家的公交车,二面面试官打来了电话,准备进行二面,当时在车上,我就说一个小时后后到家在聊,一个小时后回到家里,如约进行了二面,时间接近40分钟
- 二面主要就是讲项目,我这里主要讲的是预售库存,主要涉及到高并发设计,采用缓存如何解决数据不一致问题来描述,项目讲完就是问职业规划这些的,然后二面结束
盒马三面
- 盒马三面依旧是电话面试,面试时长和二面差不多,内容也比较相似,都是问项目,职业规划,但是在此基础上,还问了这样的业务场景有助于解决一个什么样的场景,对当前行业又如何的影响和后续能做的优化,把技术跟业务更紧密的结合,并且考察如何从技术层面推动业务,最后面试官问我如果是上嘉编制(盒马旗下公司,但是不属于阿里集团编制)考不考虑,我当时回答不考虑,毕竟对于阿里来说还是外包,三面也就到此结束
- 后来二面面试官给我打电话,告诉我,看中我的潜力,让我可以在冲一下阿里其他的BU,这次面试给的P5+,觉得他老板的要求还是比较严格,噼里啪啦说了一堆,也很感谢二面的面试官,在面试评价中给我的评价比较好,也让我在接下来的面试更有优势
第二次面试
- 第二次面试是找前同事推得业务平台事业部-营销平台,大概在第一次面试后两个月,中间被菜鸟的人卡住卡了大概一个月,很蛋疼
阿里简历评估面试
- 简历评估面试大概问题和盒马一面类似,但是即便我说redis只是简单应用,也还是问了我redis的几种数据结构和特性,分布式锁用redis的什么数据结构实现,然后还有threadLocal
阿里在线笔试评估
- 两道在线编码题,最开始第一道让我手写雪花算法,写不出来,后面面试官就给我换了
- 有3个独立的线程,一个只会输出A,一个只会输出L,一个只会输出I,在三个线程同时启动的情况下,请用合理的方式让他们按顺序打印ALIALI
- 请用java实现以下shell脚本的功能
cat /home/admin/logs/webx.log | grep “Login” | uniq -c | sort -nr
- 这两道题既是考察多线程和io
阿里一面
- 由于中间阿里大部分BU锁了P7以下的hc,我的面试流程就被搁浅了,当时心想着估计今年够呛了,就在一个周五的中午,接到了一面电话
- 一面内容和简历面差不多,还问了为dubbo贡献了什么代码,学习到了什么,怎么发现这些问题的,我就巴拉巴拉,另外还有就是如何快速定位问题,一台机器突然cpu和内存都满了,怎么样快速解决,这个时候考察的不是如果做gc调优,是如何快速进行问题修复
- 然后一面就愉快地结束了
阿里二面
- 阿里二面的时候是一个小姐姐,她应该就是我入职后的直属leader,她在一面的当天晚上就给我打来了电话,因为是小姐姐,最开始以为是HR,因为小姐姐的问题也都是职业规范,为什么离职,之前在公司怎么学习的,之前公司氛围很好为什么离职,后来又问我在dubbo贡献中学到了什么,自己觉得自己有什么优势,没有问一个技术,后来我问她,这个面试流程怎么回事,突然就hr面了吗,她说她不是hr,我说那怎么不问技术啊,比较惊讶, 她就告诉我说,前面的面试官已经问过技术了啊,大概聊一聊其实就知道了,就说我还不错,然后我问她如果又下一面是啥时候,她说大概一周左右吧,大老板比较忙
阿里三面
- 过了周末,周日早上接到阿里hr小姐姐的面试邀约,周三早上在西溪园区进行现场终面,这一刻终于来了,准备好了阿里的入园前准备,一大早就去西溪园区面试了,这次面试的大佬也就是我们那个部门的CTO了
- 面试首先自我介绍,然后讲述业务场景,为什么要这么做,然后这么做解决了什么问题,然后自己在项目中负责了什么,面试前,面试官告诉我说,一定不要紧张,他问的问题也许会有些刁钻,但是按照自己的想法,想清楚后回答就好了,不一定有正确答案,然后我依旧对之前的项目进行了架构描述,然后说自己重构后的架构,解决了什么问题,带来了怎么样的成果
- 中途面试官说他去上个厕所,给我出了两个题目,让我在墙上画,一个是之前的架构我该如何优化,另一个是一个阶乘的两种写法(递归和非递归),阶乘题当时只写了一种,后来发现问题是自己没有做防御式编程,这个是不够细心,另外就是架构上后续优化,提出了可以在进行DDD上的实践
- 最后面试官问我职业规划,然后离职原因这些,就和之前面试如出一辙了,面试大概持续了一个半小时,最后面试官给我介绍了我现在面试的是经济体解决方案这个部门,主要是负责从0到1的一些业务打包,为集团其他BU提供开箱即用的SDK
阿里HR面
- 当天下午,阿里的hr又打电话约我第二天早上的HRG的视频面试
- HRG的是面试大概就是为什么离职,职业规划,自己觉得自己的优势什么的,薪资待遇这些,大概时间半个小时,很快就结束了
收到Offer
- 由于HRG面试是端午前,过了端午的星期一早上,HRG打来了电话,说我通过了面试,跟我讲了薪资和福利待遇,就愉快地接到Offer了
一些总结
- 这两次阿里面试,其实可以看到阿里对于框架原理以及基础的比重非常高,不是背背面试题就能挺过去的
- 另外对于业务上,阿里也喜欢问一些高并发的问题,并且如何解决大流量,保证系统可用性,然后以及架构的优化
- 最后就是阿里很看重候选人的职业规划,我们需要对今后的职业发展有个很清晰的规划
- 面试基础准备,这里有一份之前我的老大之一(现在在网易考拉)当时为我们分享的他这些年来认为java基础比较重要的地方,当然也是面试阿里必须要准备的一些知识点

- 图片pdf的下载地址
感谢
- 最后要感谢在我毕业后到面上至今给我帮助的朋友同事,如果没有你们用自己亲身经历踩过的坑的分享,给我一些很关键节点上的方向,我也不会拿到阿里的offer,感谢身边的所有人
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Maple!