阿里五面的一点体会(Java研发)
闲来无趣,还是贡献一下今年阿里校招的一些经历吧,不知道算是成功还是失败的,简单讲讲这个过程吧。
首先介绍一下本人并非今年应届,仅是想尝试一下,也就只投了阿里一家,是通过内推的。起初只是想试试简历能不能通过,毕竟非计算机专业而且相差较大。当时只是偶然的机会在某校论坛看到的内推消息(至于为啥没选择牛客呢,只是因为不想浪费其他人的机会而已嘛,毕竟自己不应该今年找工作),试着把简历投了过去,没想到第二天就收到了阿里小二发来的内推链接,在实习的公司请了半天假回来认认真真地填写了简历,最重要的是把阿里简历页面的三道开放性问题写的很详细。
一面(电话面 1一个小时左右 )
约投递一周后接到电话,问了大概以下问题,时间比较长了,记得不太清楚了
1 ArrayList和LinkedList有什么区别,能否序列化
2 如何判断链表是否有环
3 concurrentHashMap如何实现
4 集群服务器 如何application 共享
5 四个表 记录成绩,每个大约十万条记录,如何找到成绩最好的同学
6 AIO与BIO的区别
7 DirectMemory是否了解
8 对JVM了解多少?我当时提到了内存模型 ,他问我工作线程的内存如何释放
9 JVM的垃圾收集算法了解多少?有哪些垃圾收集器
10 是否了解红黑树
11 session的生命周期是多久
12 关于Mina框架了解多少?(因为我在项目里用到了Mina,所以提到了这个部分)
13 是否了解Linux
由于大概四个月过去了,能记住的只有这么多了。一面大概持续了一个小时吧,总的来说问题广而杂,而且会比较深入。这就是大家所谓的压力面试,面试基本在一个聊天+面试的氛围中进行。面试官的跳跃性很强,时不时地聊天,又会突然提问。印象中还有更多的问题吧,实在记不清了,而且我当时也没有全部回答上来。
二面(电话面 20多分钟)
本以为一面挂了,结果还是在几天后接到二面电话。他首先自我介绍是XX事业群的总监,基本就是聊天,没有任何技术问题。比较关心如果发offer能否全职实习的事。很轻松,也很意外。
三面(交叉面 30分钟)
第三面是杭州的电话(前两面都是北京),很明显就是大家所说的交叉面(前面的叫部门内部面试)。从他的问题中我能感觉到他完全不知道前面的面试官问过我什么问题,后来事实证明在面试系统里面应该只有评价,所以不要以为面试过的问题不会再问了。
1 介绍自己的项目,问我项目中用到的websocket,问我websocket有哪些优缺点
2 HashMap和ConcurrentHashMap的实现
3 JVM内存都分为哪些
4 是否了解数据库的索引是如何实现的
5 对Linux是否实践过?(几乎没有问,因为我只说我会用简单的命令)
三面总体说比较机械,没有过多的废话在里面,一个问题接着一个问题,不会就过,感觉有点无情。而且也没有最后的提问环节
四面(北京终面 1小时左右 )
首先说为啥要去北京。其实我也不知道,当时以为是内推挂了,没想到收到短信邀请参加现场面试,内推的姐姐也让准备一下HR面之类的,但是我当时就觉得肯定还有一轮技术面。而且当时已经知道要拥抱变化了,所以这个技术面肯定不好过。记得去北京的时候,准备了厚厚一摞的复习资料,全部都是自己的博客总结以及自己想的问题,事实证明基本命中了技术面的全部题。
面试的场面就不说了,略显冷清(大家都知道原因)。被叫号后领入一个大厅,跟面试官1V1,一个小桌,一个Apple(真想问问他苹果笔记本怎么样,忍住了),桌子上有几张纸,没有很紧张。
首先讲了自己的项目,而且在纸上画了画结构图,项目引出的问题
1 BIO与NIO的区别
2 为什么要用Mina框架
3 Mina框架的实现原理
项目讲了很久,总得来说这个过程是我来主导的,我有意在说出了一些点,然后他就问了我相关的东西。
然后让我在纸上也一个HashMap的实现,set get方法,不要求线程安全。因为真的看过hashmap源代码,没什么压力,不过hash传播算法确实没写出来,不过他也不太在乎。在我写的时候,他在看我的技术博客(博客地址是我写在开放性问题里面的)。写完之后他看了一下,也没说什么,不得不说写的挺乱的,没有特意练过笔写代码,只说一个判断可以进行短路优化。
后面他又问我一个博客上写的问题,volatile和synchronized的区别。
问题不止这些,确实记不住了。后面跟他聊天中我就知道自己过了,能看出来他比较欣赏我的技术水平吧,尤其是对一些细节的掌握
五面(HR面 20分钟左右吧)
HR面嘛,大家都知道就是聊天,然后她不断对你评估。说一些问题吧
1 自己做过的项目
2 自己在大学期间有哪些做到了0到1
3 如果去问同学,他们会对你有什么评价
4 遇到了什么困难
5 喜欢哪个城市
总结
以上说了那么多,当然我要说这应该只有所问的题目的一半吧,因为确实忘了。我觉得大家如果实在想知道到底都问的是什么,可以看看其他人的面经,在我看来这些问题真的差不多。我最后没有拿到阿里的offer,这不能说自己在拥抱变化,只能说自己还不够优秀,下面讲一下如何准备面试吧:
(1) 平时多看书,面试前看面经。有人说这不是废话吗?但我敢说大部分只做到了后半句,甚至有人都不知道还可以有面经可以看。我承认面试可以突击,可以看看别人的面经问了什么,自己查一点答案就背。但是这样在面试官前面你首先就没有自信,你会觉得那是我背的,在不断回忆的过程中怕的是背错,而不是一个正确的回答问题的过程。你以为面试官真的看不出来嘛,那他对比一下也知道谁在背了。
(2) 好好包装自己的项目。确实不是每个人都有很好项目,但你应该知道面试中总考的点是什么。看我的面试经历,有多次提到NIO与BIO,这是一个热门考点,但我要说的是所有的NIO与BIO问题都是我引导面试官问我的。因为我在介绍Mina框架的时候,我有意的提到NIO,那么他们马上就会去问这个知识点。所谓的项目,我觉得面试官是想知道你在项目中学习了什么。不是说你学习了哪些编写代码的规范,而是说你学到了哪些他们感兴趣的点。
(3)养成写博客的习惯。阿里的简历选项中有一个让提交github地址的地方,悲剧了我没有。但是我仍然想让面试官了解我,那么只能通过开放性问题了。在一个显眼的位置写上自己的博客地址。曾经在一个腾讯的面经里面看到,面试官对面试者说我们看了你全部的技术博客。博客不是让面试官看到你技术有多牛,而是让他们看你是如何学习的。把你的学习的点滴写在博客上,哪怕只是Integer类的缓存,他们一旦get到这个点,就会觉得你的学习能力很强,会对你有一个很好的印象。PS:面试我的技术官都有看过我的博客,我相信它给我加分了。
(4)利用好“你想问我什么?”。这个问题一般出现在面试的结尾,不要以为自己没用的,你能了解到很多。记得我在终面的时候问那个面试官“你对我的技术有些建议?我未来应该朝哪个方向努力。”他对我的面试过程以及博客进行了点评,而且把前面的面试评价给我讲了讲,简单了提了一些建议。我觉得这建议胜过读几本书。据说阿里的终面面试官一般都是P10(可能不是哈),他们是牛P了,有多少人有这样的机会去接触到这些牛人,并且给你做指导呢?有这样的机会为什么不抓住呢。
大概就写这么多吧,写在牛客网因为它让我学到了很多东西,我应该回馈给大家。感谢牛客的CEO叶神能给大家提供这样一个平台,大家多刷题,都能拿到理想的offer!
建议叶神给讨论区发文加一个表情功能,要不怎么更好的卖萌啊。。
#阿里巴巴##Java工程师#首先介绍一下本人并非今年应届,仅是想尝试一下,也就只投了阿里一家,是通过内推的。起初只是想试试简历能不能通过,毕竟非计算机专业而且相差较大。当时只是偶然的机会在某校论坛看到的内推消息(至于为啥没选择牛客呢,只是因为不想浪费其他人的机会而已嘛,毕竟自己不应该今年找工作),试着把简历投了过去,没想到第二天就收到了阿里小二发来的内推链接,在实习的公司请了半天假回来认认真真地填写了简历,最重要的是把阿里简历页面的三道开放性问题写的很详细。
一面(电话面 1一个小时左右 )
约投递一周后接到电话,问了大概以下问题,时间比较长了,记得不太清楚了
1 ArrayList和LinkedList有什么区别,能否序列化
2 如何判断链表是否有环
3 concurrentHashMap如何实现
4 集群服务器 如何application 共享
5 四个表 记录成绩,每个大约十万条记录,如何找到成绩最好的同学
6 AIO与BIO的区别
7 DirectMemory是否了解
8 对JVM了解多少?我当时提到了内存模型 ,他问我工作线程的内存如何释放
9 JVM的垃圾收集算法了解多少?有哪些垃圾收集器
10 是否了解红黑树
11 session的生命周期是多久
12 关于Mina框架了解多少?(因为我在项目里用到了Mina,所以提到了这个部分)
13 是否了解Linux
由于大概四个月过去了,能记住的只有这么多了。一面大概持续了一个小时吧,总的来说问题广而杂,而且会比较深入。这就是大家所谓的压力面试,面试基本在一个聊天+面试的氛围中进行。面试官的跳跃性很强,时不时地聊天,又会突然提问。印象中还有更多的问题吧,实在记不清了,而且我当时也没有全部回答上来。
二面(电话面 20多分钟)
本以为一面挂了,结果还是在几天后接到二面电话。他首先自我介绍是XX事业群的总监,基本就是聊天,没有任何技术问题。比较关心如果发offer能否全职实习的事。很轻松,也很意外。
三面(交叉面 30分钟)
第三面是杭州的电话(前两面都是北京),很明显就是大家所说的交叉面(前面的叫部门内部面试)。从他的问题中我能感觉到他完全不知道前面的面试官问过我什么问题,后来事实证明在面试系统里面应该只有评价,所以不要以为面试过的问题不会再问了。
1 介绍自己的项目,问我项目中用到的websocket,问我websocket有哪些优缺点
2 HashMap和ConcurrentHashMap的实现
3 JVM内存都分为哪些
4 是否了解数据库的索引是如何实现的
5 对Linux是否实践过?(几乎没有问,因为我只说我会用简单的命令)
三面总体说比较机械,没有过多的废话在里面,一个问题接着一个问题,不会就过,感觉有点无情。而且也没有最后的提问环节
四面(北京终面 1小时左右 )
首先说为啥要去北京。其实我也不知道,当时以为是内推挂了,没想到收到短信邀请参加现场面试,内推的姐姐也让准备一下HR面之类的,但是我当时就觉得肯定还有一轮技术面。而且当时已经知道要拥抱变化了,所以这个技术面肯定不好过。记得去北京的时候,准备了厚厚一摞的复习资料,全部都是自己的博客总结以及自己想的问题,事实证明基本命中了技术面的全部题。
面试的场面就不说了,略显冷清(大家都知道原因)。被叫号后领入一个大厅,跟面试官1V1,一个小桌,一个Apple(真想问问他苹果笔记本怎么样,忍住了),桌子上有几张纸,没有很紧张。
首先讲了自己的项目,而且在纸上画了画结构图,项目引出的问题
1 BIO与NIO的区别
2 为什么要用Mina框架
3 Mina框架的实现原理
项目讲了很久,总得来说这个过程是我来主导的,我有意在说出了一些点,然后他就问了我相关的东西。
然后让我在纸上也一个HashMap的实现,set get方法,不要求线程安全。因为真的看过hashmap源代码,没什么压力,不过hash传播算法确实没写出来,不过他也不太在乎。在我写的时候,他在看我的技术博客(博客地址是我写在开放性问题里面的)。写完之后他看了一下,也没说什么,不得不说写的挺乱的,没有特意练过笔写代码,只说一个判断可以进行短路优化。
后面他又问我一个博客上写的问题,volatile和synchronized的区别。
问题不止这些,确实记不住了。后面跟他聊天中我就知道自己过了,能看出来他比较欣赏我的技术水平吧,尤其是对一些细节的掌握
五面(HR面 20分钟左右吧)
HR面嘛,大家都知道就是聊天,然后她不断对你评估。说一些问题吧
1 自己做过的项目
2 自己在大学期间有哪些做到了0到1
3 如果去问同学,他们会对你有什么评价
4 遇到了什么困难
5 喜欢哪个城市
总结
以上说了那么多,当然我要说这应该只有所问的题目的一半吧,因为确实忘了。我觉得大家如果实在想知道到底都问的是什么,可以看看其他人的面经,在我看来这些问题真的差不多。我最后没有拿到阿里的offer,这不能说自己在拥抱变化,只能说自己还不够优秀,下面讲一下如何准备面试吧:
(1) 平时多看书,面试前看面经。有人说这不是废话吗?但我敢说大部分只做到了后半句,甚至有人都不知道还可以有面经可以看。我承认面试可以突击,可以看看别人的面经问了什么,自己查一点答案就背。但是这样在面试官前面你首先就没有自信,你会觉得那是我背的,在不断回忆的过程中怕的是背错,而不是一个正确的回答问题的过程。你以为面试官真的看不出来嘛,那他对比一下也知道谁在背了。
(2) 好好包装自己的项目。确实不是每个人都有很好项目,但你应该知道面试中总考的点是什么。看我的面试经历,有多次提到NIO与BIO,这是一个热门考点,但我要说的是所有的NIO与BIO问题都是我引导面试官问我的。因为我在介绍Mina框架的时候,我有意的提到NIO,那么他们马上就会去问这个知识点。所谓的项目,我觉得面试官是想知道你在项目中学习了什么。不是说你学习了哪些编写代码的规范,而是说你学到了哪些他们感兴趣的点。
(3)养成写博客的习惯。阿里的简历选项中有一个让提交github地址的地方,悲剧了我没有。但是我仍然想让面试官了解我,那么只能通过开放性问题了。在一个显眼的位置写上自己的博客地址。曾经在一个腾讯的面经里面看到,面试官对面试者说我们看了你全部的技术博客。博客不是让面试官看到你技术有多牛,而是让他们看你是如何学习的。把你的学习的点滴写在博客上,哪怕只是Integer类的缓存,他们一旦get到这个点,就会觉得你的学习能力很强,会对你有一个很好的印象。PS:面试我的技术官都有看过我的博客,我相信它给我加分了。
(4)利用好“你想问我什么?”。这个问题一般出现在面试的结尾,不要以为自己没用的,你能了解到很多。记得我在终面的时候问那个面试官“你对我的技术有些建议?我未来应该朝哪个方向努力。”他对我的面试过程以及博客进行了点评,而且把前面的面试评价给我讲了讲,简单了提了一些建议。我觉得这建议胜过读几本书。据说阿里的终面面试官一般都是P10(可能不是哈),他们是牛P了,有多少人有这样的机会去接触到这些牛人,并且给你做指导呢?有这样的机会为什么不抓住呢。
大概就写这么多吧,写在牛客网因为它让我学到了很多东西,我应该回馈给大家。感谢牛客的CEO叶神能给大家提供这样一个平台,大家多刷题,都能拿到理想的offer!
建议叶神给讨论区发文加一个表情功能,要不怎么更好的卖萌啊。。