写点什么

两年 Java 开发经验四面阿里成功拿下 P6offer,总结大厂面试的心酸血泪史

发布于: 2020 年 10 月 13 日

前言



小编万万没想到的是:就在我们国庆节休息的时候,竟然有粉丝说:自己面试阿里成功了!

果然大厂都是996ICU,国庆都不放假的吗?比不过!比不过!





玩笑归玩笑,接下来我们还是看看别人是如何面试成功阿里的!并总结面试经验希望对大家有帮助,(关注的粉丝都面试成功了?)





阿里一面:



1:自我介绍



2:面:谈谈你做过项目中印象较深或自认为做的比较好的地方?



答:我觉得我在Xx做的不错,用了XX需求实现XX功能,性能提高了N倍…等噼里啪啦的说了一堆。



3:面:你说使用到了AOP,能谈谈它的实现原理嘛?



答:它是依靠动态代理实现的,动态代理又分为JDK自身的以及CGLIB…



4:面:嗯,能说说他们的不同及优缺点嘛?



答:JDK是基于接口实现,而CGLIB继承代理类。。。(就是这样会直问下去,如果聊的差不多了就开始问一些零散的问题)



5:JMM内存模型,如何划分的?分别存储什么内容?线程安全与否?

6:类加载机制,谈到双亲委派模型后会问到哪些违反了双亲委派模型?为什么?

7:为什么要双亲委派?好处是什么?

8:平时怎么使用多线程?有哪些好处?线程池的几个核心参数的意义?

9:线程间通信的方式?

10:HashMap的原理:当谈到线程不安全时自然引申出ConcurrentHashMap,它的实现原理?

11:分库分表如何设计?垂直拆分、水平拆分?

12:业务ID的生成规则,有哪些方式?

13:SQL调优?平时使用数据库有哪些注意点?

14:当一个应用启动缓慢如何优化?

15:对乐观锁和悲观锁的理解;



其他的想不起来了,大概是以上这些,最后还简单的聊了之前做过得项目上的问题,

结束之前告诉我之后会换一个同事和我沟通,听到这样的回复一面应该就这样过了。



一面小结



首先确认对阿里的意向度(如果异地更会考虑对工作地点(杭州)的意向度!阿里很看重这个);

其次面试官一般会针对您所做过的项目来做具体技术的交流,会比较关注个人对项目细节是不是掌握到位,

主要考察java的技术基础和原理,比如Spring框架以及数据库和JVM三个方面,也会交流到分布式、线程池的实现等等,

重点考察是不是有比较钻研技术和技术上的亮点【不一定每个面都很厉害但一定要有亮点】



阿里二面



1:变着法的问了一大堆线程池的知识 (主要考对应的参数)

2:java内存模型

3:lock和synchronized的区别

4:B+树和B-树的区别

5:复合索引

6:聚集索引和非聚集索引的区别?

7:数据库索引 主键和唯一索引有什么区别

8:索引失效条件,什么时候该建立索引

9:innDB和MyISAM的区别?

10:线程安全(阻塞同步,非阻塞同步,无同步)

11:说说Java 类加载过程?

12:描述一下 JVM 加载 Class 文件的原理机制?

13:GC 是什么? 为什么要有 GC?

14:简述 Java 垃圾回收机制。

15:如何判断一个对象是否存活?(或者 GC 对象的判定方法)

16:垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知虚拟机进行垃圾回收?

17: stop() 和 suspend() 方法为何不推荐使用?

18:sleep() 和 wait() 有什么区别?

19:同步和异步有何异同,在什么情况下分别使用他们?

20:简述 synchronized 和 java.util.concurrent.locks.Lock 的异同?

21:请说出你所知道的线程同步的方法。

22:什么是线程饿死,什么是活锁?

23:什么是 ThreadLocal?



二面小结



根据项目深入的了解技术实力,了解您的知识面,了解您的问题解决能力以及技术灵活运用能力,也通过这一过程考察团队合作能力、学习主动性和创新性,可以挑选2-3个做过的有典型性的项目做一个仔细技术回顾和自己独到的理解【这会成为您的加分项】;



阿里三面



1:关于Java异常的续承层次结构,讲述异常的续承关系;

2:java线程如何启动?java中加锁的方式有哪些,怎么个写法?

3:对乐观锁和悲观锁的理解;

4:JVM中堆是如何管理的,JVM的内存回收机制,介绍一下

5:redis缓存和memcached缓存的区别,以及各自的优劣势

6:微服务架构:dubbo和springcloud的区别,以及各自对应的使用场景。

7:线程池如何做负载均衡

8:如何设计单点登录,说下单点登录的原理

9:synchronized的实现原理?Volatile能保证原子性吗?为什么?

10:讲一下GC?

11:.TCP三次握手,为什么三次握手?

12:mysql死锁,怎么解决,如果不要求执行顺序,死锁怎么解决

13:你觉得阿里巴巴怎么样?

14:你对996你有什么看法呢?

15:说下你的强弱点



三面小结



他们最后的高管复试会涉及到相关的技术问题,大部分是对你的整体价值观做宏观的把控(比如上进心,责任心,心态,工作激情等)



HR确认面



基本就是从大方向了解一下您的心态、抗压能力,工作中的角色、未来大致的规划以及对阿里的意向度



【技术基础以及的问题多看看书准备下就行了,不懂的直接说不懂没关系的;在项目细节上多把关一下,根据项目有针对性的谈自己的技术亮点,能表达清楚,可以引导面试官来问你比较擅长的技术问题,个人就可以尽情发挥】



阿里比较喜欢的人才特点:对技术有热情,强硬的技术基础实力;主动,善于团队协作,善于总结思考



面试总结



在我面试的这十几家大大小小的公司中,我发现,那些大厂的面试反而比较容易,那些小一点的面试比较苛刻的。反正就是挑你鱼里的刺。最后,我在分享一下我的面经



第一点:包装一份属于自己的独特的简历



第二点:对面试的公司做好相应的准备



第三点:在面试过程中要学会主动问问题



第四点:在技术问题上要如实的回答问题(会就会,不会就不会)



第五点:要有过硬的技术知识



第六点:在有过硬的技术知识下,要有自己的见解与看法。



最后也把阿里大佬面试成功的资料免费分享给大家,希望你也能成为下一个大佬!



转发+关注,然后添加我的VX(tkzl6666)即可免费领取大厂Java面试真题(含答案),Java面试复习资料,Java架构进阶资料









听说一键三连的粉丝都面试成功了?如果本篇博客对你有帮助,请支持下博主哦





用户头像

添加我的微信:tkzl6666 获取文中资料 2020.09.19 加入

添加我的微信:tkzl6666 获取文中资料

评论 (2 条评论)

发布
用户头像
666
2020 年 10 月 13 日 14:04
回复
用户头像
两年 Java 开发经验四面阿里成功拿下 P6offer,总结大厂面试的心酸血泪史
2020 年 10 月 13 日 14:03
回复
没有更多了
两年Java开发经验四面阿里成功拿下P6offer,总结大厂面试的心酸血泪史