最近去阿里的菜鸟国际做了一次面试交流,发现大公司对于面试者的知识结构考核非常严谨,可以作为我们日常工作学习的指导。虽然很多人说面试问到的东西在实际工作中很少用到,甚至有「面试造火箭,工作拧螺丝」的说法。但从面试中,其实可以看得出来现在的公司对于面试者的知识体系要求。如果我们能在工作中就按着这样的要求去不断提升,那么在面试的时候必然也能游刃有余。


一般来说,阿里的面试会有两轮的技术电面,分别交叉检验你的技术基础。后面还有两轮的现场技术面试,主要检验你的项目经验。但从知识体系的角度来看,阿里面试对于知识的考核可以分为三个层次:
对于基础知识的考核、对于项目经验的考核、对于项目深度的考核。
1基础知识考核
在这个层次上,主要考核你对 Java 语言本身原理的理解以及各种框架的原理理解。对于 Java 开发岗位上来说,这些知识点包括但不限于:

*
集合 HashMap 的原理,与 Hashtable、ConcurrentHashMap 的区别?

*
Java 线程池的核心属性以及处理流程

*
Java 并发包原理、Synchronized关键字、锁

*
线程的生命周期

*
JVM类加载机制

*
JVM内存模型

*
JVM分代以及垃圾回收机制

*
Spring Bean 容器生命周期

*
Spring AOP 原理

*
Dubbo 请求流程以及原理

*
数据库 SQL 优化、数据库索引、索引原理

*
……

上面只是说了很少的一部分而已,以下还有往期整理的5套面试试题!

第一套:《2018年最全Java面试通关秘籍第一套!
<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247485315&idx=1&sn=75153fe91a19d1b299fd849a11e7d1d7&chksm=e9c5fe32deb27724953cf976a8eda562c08154df725998ee1e07a00460613e9dd57411ef0caf&scene=21#wechat_redirect>


第二套:《2018年最全Java面试通关秘籍第二套!
<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247485604&idx=1&sn=d624680e941b7cd6e2b3ce02c2698f6e&chksm=e9c5f115deb278037dece675d58e9b8e0e796a5c75c8bab139eea3883f6a3881c7f05c5f7979&scene=21#wechat_redirect>


第三套:《2018年最全Java面试通关秘籍第三套!
<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247485723&idx=1&sn=f5c3bfbfab9fe01e6d4979e4f315f024&chksm=e9c5f0aadeb279bcff0b81842f09adc1bbf0f4d2b7bb74c5b1c4749bd1bc837e76330c81cc08&scene=21#wechat_redirect>


第四套:《2018年最全Java面试通关秘籍第四套!
<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247485779&idx=1&sn=3b06b9923df7f40f887ead8b8a53e50e&chksm=e9c5f0e2deb279f47fbfc3a12a70896bf95fa8c631939b87c85aea904785d10cb12667fa8724&scene=21#wechat_redirect>


第五套:《2018年最全Java面试通关秘籍第五套!
<https://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247485897&idx=1&sn=25f71098bd5421722db2511730eb8f50&scene=21#wechat_redirect>


其他地方也可以在后台回复「面试题」,即可获得5份往期经典面试试题哦!



看到这么多的知识点,我一下子就懵逼了,这么多得看到什么时候才看得完啊?但后面我想明白了,其实你不需要全部都懂,但需要了解大部分知识点,并且在这大部分知识点中,还需要有部分是了解得非常深入的。如果达到这个水平,基本上都能通过考核。

对于基础知识的考核多出现在阿里的前两轮电话面试上。对于这块,你事前把网上常见的面试题目看一遍,多面试几次基本上都没有问题。
2项目经验的考核
当你成功通过基础知识的考核之后,你会进入下一关的考验:项目的理解程度。



面试官首先会让你选择一个你最拿手的项目,画出架构图,之后的一切问题都从这个架构图触发。当你画出架构图之后,你肯定需要解释清楚每个模块的作用,每个框架的原理以及与其他框架的区别。

例如我就用我做过的一个搜索项目作为经典项目,与面试官探讨。

项目中用到了 Kafka 这个框架,那么面试官就会问 Kafka 和 RocketMQ 之间的区别是什么,它们两个有什么不同?

项目中还用到了 Canal 这个阿里巴巴开源的框架,那么面试官自然会问这个东西是干嘛的,原理是怎样的?

项目中还用到了 Zookeeper 作为协调者,那么 Zookeeper 在这个项目中的作用是什么,扮演了什么角色?

对于「项目理解程度」的考核会发生在技术面试的三四轮。在这个层次上,你必须要有一个拿得出手的项目,并且对其中的所有框架以及原理都了如指掌,否则你会被虐惨。
3项目深度的考核

通过上一轮对于「项目理解程度」的考核后,基本上你对整个项目都会有一个全面的认识,应用层面上的问题基本上不会难倒你了。但在「项目思考深度」的考核上,就不仅仅只是考核应用层面上的问题了。

还是用我做过的一个搜索项目作为例子,其中 Canal 这个开源框架暂时是没有实现集群这个功能的,那么面试官就问了:

*
你如何去改造这个项目,从而实现 Canal 的集群功能?


这个时候,你会发现你懵逼了,因为你从来没有去思考过这个问题。你所有的工作内容都是在想如何使用开源框架,而没有进一步思考这些开源框架好不好,有什么可以改进的地方。

所以,在这一个层次上考核的是你对开源框架的思考深度,这些框架到底好不好,好在哪里,不好在哪里,有什么可以改进的地方。

对于「项目思考深度」的考核同样发生在技术面试的三四轮。在这个层次上,你不仅要对项目本身理解足够深刻,还要跳出项目本身,去思考开源框架本身的问题。
4总结

当我们回过头来总结,你会发现这三个层次都是层层递进的,而且逐步深入。虽然这是面试中总结出来的经验,但是这却是一个很好的学习指引。读者可以自己自查,看看自己现在是处于哪个层次,这样在工作中也可以不断地向更高层次迈进。


对于我来说,我缺乏的是对于项目的思考深度,很多时候都是业界觉得好,那我就用了。但是作为一个高级开发,甚至是一个即将成为架构师的高级开发来说,你必须知道为什么要用这些框架?它有什么问题,我们能不能做得更好?只有这样,我们才能有所成长。
本次送书
感谢电子工业出版社-博文视点以及杨中兴老师对Java后端技术公众号的认可与支持!

本次送书希望小伙伴多多参与,多多支持!每次活动请小伙伴详细阅读参与规则,否则视为无效参与!






内容提要:

《Spring
Cloud与Docker高并发微服务架构设计实施》从架构设计、应用开发和运维部署三个方面出发,对微服务架构设计的实施进行了全方位的阐述和深入实践,并结合生产实际讲解了Spring
Cloud、Docker 和Jenkins 等工具的具体使用方法。《Spring
Cloud与Docker高并发微服务架构设计实施》中通过一个互联网电商平台实例实现了高并发的微服务架构设计,并通过详细的开发和实施过程,演示了构建一个安全可靠、稳定高效并可持续扩展的系统平台的方法。



2018年

07月08日

电子工业出版社 | 博文视点

本次活动赞助商




觉得书还不错,直接扫码到达!






另外还有优惠哦!


满99-10 优惠码 9Z1UV5  数量:1000

注意要区分大小写。

使用时间:7月7号-7月13日

优惠码、满减仅限当当图书计算机全品。
活动规则
1、本次活动在评论区随机抽取两名幸运吃瓜群众!


2、截止日期:2018年07月08日23时00分,幸运的小伙伴名单评论区留言会置顶,获奖的小伙伴请在一个工作日内在公众号界面联系我,发送手机号、姓名、收货地址
,逾期则认为放弃处理;

3、注意啦!经常关注Java后端技术公众号留言点赞的小伙伴会自带红蓝buff加成哦!有更大的几率获得奖品哦!详见往期推文《专业算法解密
<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247484780&idx=1&sn=a34981fd1bcefaff87846748329d2d48&chksm=e9c5fcdddeb275cb7dc745d6aae6df01e641f0f902f20cf7e90746c88bc10374f2a50b678831&scene=21#wechat_redirect>





点击图片查看更多推荐内容

↓↓↓


<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247486439&idx=1&sn=e9e5a3d7b6be8cb4024e8810e0225996&chksm=e9c5f256deb27b40654635b54e4e5af41aa56dc7f1e5b5b6314d63033fe44539607409074784&scene=21#wechat_redirect>

【动画】当我们在读写Socket时,我们究竟在读写什么?


<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247486436&idx=1&sn=6191fe98089c0e75b48af5fb1840be34&chksm=e9c5f255deb27b436633647f383721fbecdf1424e95c2c0d4c3e1b285fdb06cf374516cdf363&scene=21#wechat_redirect>

主流分布式架构的风流韵事...


<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247486427&idx=1&sn=231aa6c524f28eba5f7cfbcac9b18947&chksm=e9c5f26adeb27b7c15fbaf758cf0604c59cc903d31113e8b4ede54569c1143e2903ba8f5d530&scene=21#wechat_redirect>

图解分布式架构的演进过程!


<http://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247486408&idx=1&sn=1e33de636f94fee3aae3b41c729444a5&chksm=e9c5f279deb27b6f2b3ee87de8c84900806b6339610e37bf2e426830253add03343b80dae1d9&scene=21#wechat_redirect>

如何将高并发拉下神坛!


友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信