最近社区Java技术进阶群的小伙伴总是会问,如何面试阿里Java技术岗,需要什么条件,做哪些准备;小编就这些问题找到了阿里技术团队中在一线真正带Java开发团队并直接参与技术面试的专家,分享了自身在筛选简历时的要求,面试时经常会问到的问题,以及面试官通过提问是怎样判断面试者技术水平的。
以下都是面试官的经验,我们只介绍普遍现象,但会存在特例
哪类Java开发者更受阿里青睐?
1、潜力比较大、心力脑力体力都处于巅峰状态的,工作4-5年左右是普遍的最佳时段
2、经验足,有视野的,具备大项目积累沉淀
3、平时爱学习爱总结,有进步的主观能动性
4、聪明,皮实,乐观,自省 的同学,【聪明,皮实,乐观,自省】的解释: https://yq.aliyun.com/articles/671042
哪些Java开发者面试阿里会比较艰难?
1、工作多年已经转管理岗的,如果面试开发岗位,有可能代码不熟练或心力脑力体力很难跟上技术开发强度
2、工作3年以下的,有可能技术和积累的还不够,需要继续修炼
3、以往开发的项目太简单,很难看到工作亮点,例如项目经历过多是增删查改加缓存
4、以上情况也会有例外的,例外情况的除外
阿里Java技术面试流程:
1、自我介绍,面试官的关注点:做过项目的规模、具体细节及本人所承担的任务
2、一些Java基础问题,做初步的了解
3、面试者选择一个最能体现价值的项目,详细描述细节,架构以及为什么这样设计
4、设置1-2个必答题,如果答不上来后面不用继续了(面试官面试要效率的,所以会有这种杀手锏类的问题,这种必答题本文后面会详细举例)
5、如果你走过前4步,后续面试官可能会提问关于学习能力的问题和考察处理未知问题的能力
面试官经常会问到的几个知识点以及面试官问这些问题背后的解读
1、杀手锏类问题(划重点),每个面试官的杀手锏可能不一样,但目的是一样的,用最短的时间筛选出适合的人
例如1:请写出常用的Exception
一般来说,能写出20个以上,而且随意选择几个,大都能说的比较清楚,就是非常不错的了。考面试者的实际开发能力,特别是深度,也可以看出过去常做的内容
比如写了ClassNotFoundException,可能是做过ClassLoader动态加载的内容。
如果是写了ConcurrentModifiedException,可能是并发问题或者别的地方不足。
如果写了UnsupportOperationException,可能在设计方面有些基础或者经验。
如果写了SecurityException或者IlleagalException,说明做的内容比较深一些,更贴近底层。
例如2:死锁的是怎么产生的?如果答的很乱,提示需要几个线程几个资源?描述细节
2、观察类问题,这类问题就是考验面试者思路,表达能力,项目经历
例如1:讲述一个最能体现价值的项目,详细描述细节,架构以及为什么这样设计,和其他项目比,为何选此项目
例如2:讲述一个有印象或者最难的Bug
这类问题主要听面试者是否能够非常清楚细节地讲述一个项目或bug,包括如何发现,解决,反思,从这些内容上可以判断他是否在一线写代码,以及思维方式,一般会涉及:故障点,定位,解决思路,方案选择。
3、开放类问题,问到这类问题说明面试官对你基本满意,不在乎说对说错,可能没有对错,就是考察你的学习能力和处理未知问题的能力以及你的思考。
例如1:说出几本觉得最有意义的技术书籍
例如2:如Spring中如何对同名Bean加载时的处理
例如3:大并发时的系统架构需要考虑哪些问题,怎样扛住大并发量,一致性怎样解决,如何取舍
如果以上技术你都游刃有余了,那么面试阿里成功的几率80%
推荐一个交流学习群,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化这些成为架构师必备的知识体系。还能领取免费的学习资源,目前受益良多
点击:加入