点击上方“Java基基”,选择“设为星标”
做积极的人,而不是积极废人!
源码精品专栏
个人背景
5 轮面试
6 点总结
在上次,艿艿的朋友「伐木机」面【挂】阿里之后,我们已经成功的获得了一次失败的经历。哈哈哈,我又在他的伤口撒个椒盐,真香。喜欢的胖友,可以看看 《不服输,你就不会输!(一份热腾腾的面经)》 。
个人背景
本人毕业于杭州的一所二本学校,实习进入了传统企业,毕业的时候发现互联网不但薪资高,技术也新,自己在这个老旧的地方待着可能没啥前途,所以毕业两个月的时候就出去找工作了。
但是从传统企业到互联网,因为没有互联网经验简历直接被刷,只能去面传统企业,但是一些用spring的传统企业也看不上我,因为我根本不知道啥是spring,后来顺利进入了一家类似的但是大型的传统企业,好在公司搞事情,建立了一家互联网创业公司,虽然说是赔钱公司,但是也给我一个做互联网项目的机会。
干了两年之后,在boss上更新了下简历,发现阿里既然找我要简历,我就给了,在面试中,被虐的体无完肤,先开始问项目,我发现我的项目根本没啥亮点,然后问基础啥?数据库还有很多种索引?索引实现是什么B树什么来着?springboot启动原理?不是就一个注解吗?
虽然啥都不会但面完还是去跟同学吹了一下,我面了阿里。但那时让我懂得了我现在做的都是些没有技术含量的活,当时给自己定了一个毕业三年进阿里的目标,虽然自己都觉得不可能,反正定目标也不花钱。
后面就开始想要准备什么,发现一脸茫然,看源码吧,看了一段时间后只能感慨,这东西不是人看的,看一些大厂用到的中间件吧,发现自己没用过,能看睡着去,那就从算法开始吧,听说大厂会问算法。从排序看到动态规划,从数组链表看到红黑树调表,顺便手贱去手撸一遍,大概花了我半年多的时间,其它啥都不看,就看数据结构与算法,然后去看数据库的一些实现原理,发现既然很好懂,怎么回事?难道是看了数据结构与算法之后自己得到了升华?
后面证实真是如此,看JUC,集合的一些源码的时候既然很容易就看懂了,这就让我领悟了基础的重要性,后面就准备了下面试题,就直接去面阿里了,自信心爆炸。接下来就有了今年第一次面阿里,一面挂的经历,后面就开始了漫长的面试过程。
5 轮面试
8 月 14 号
8月14号晚上,突然接到了天猫的约面试电话,当时的背景,两个月前面了一次阿里新零售,一面就挂了, 后面过了一个月不甘心,让淘宝直播的同学帮我联系后台老大又搞了次面试,还是一面就挂了。当时给我反馈 就是我对项目的设计并没有想全,落地可以简单,但想法要全面。当时一种挫败感,想着之前公司项目太差劲了 ,用户量也很低,打算去一家中大型互联网企业去历练两年再试试阿里。
8 月 15 号
8月15号上午11点,一轮的电话打来了,这次我的心态好了很多,没有之前的紧张跟卑微,就当抱着学习的心态去 和面试官聊,这次聊的比较全面,有关HashMap,JUC源码,索引原理,项目经验,以及对订单库存之类的一些设计想法, 最后口述了一下KMP算法,以及一个比较简单的算法题思路,历时50分钟。聊完就约了当天晚上8点的笔试。
第二轮,笔试题有两题,一个是并发的时候商品数量相关的加减的编程,花了一个半小时。还有一个简单的算法题。可以说是信心又回来了,后面又等了一周,既然接到了阿里事业部的面试电话,是做ERP的,简单的聊了下,项目经验并不大符合,最后我问 了一下,我不是在面天猫吗?怎么其它部门也可以面?他告诉我,我的面试流程被超时释放了。我都震惊了,赶紧去 找帮我投简历的人,是脉脉上认识。他告诉我,面试官太忙忘记了,流程被其它部门抢去了,要等其它部门结束了, 这边才能继续面,他会帮我去协调。我想着,我运气是真的差,可能又无缘阿里了吧。
8 月 22 号
8月22下午,接到天猫第三轮的面试电话,应该是协调回来了,这一面主要就是问项目了,介绍了下项目,然后问我最近 做了的是那一块,我说是推荐引擎。好像面试官挺感兴趣的,就开始问细节,问优化之类的,这一块涉及到的比较大, 内容也很多,聊了一个小时之后,面试官要去参加会议,就跟我约了晚上继续聊。
8 月 22 号
8月22晚上,接到第三轮面试的后续电话,这次直接进入正题,开始考察技术深度了吧,开头就开始redis的 优势,为什么单线程快,这个我答的还行,后面开始问MQ保序吗?我不知道。然后问动态代理怎么实现的?我又不会,这个时候我汗都出来了,后面问数据库了,这可是我强项,想到就简单的问了下什么时候会加锁, 加什么锁就过了,当时我感觉我要凉了,后面的也是吞吞吐吐的回答,很快就到了面试官问我, “你还有什么需要问我的吗?”,我知道再不把握住我面试就此结束了,我就问了下,你们这边做读写分离的时 候读库延迟同步,如何保证缓存的一致性,其实后面面试官讲了什么我根本没空想,只想着我需要问什么才能 体现自己的优势,后面我就问了:“阿里这边不都会问得很深入吗?”,他就说:“我问的你都不会呀,我怎么深入?”。我说你可以深入的问一下数据库底层,juc源码,数据结构与算法,虚拟机。然后后面就开始问虚拟机调优, 算法在项目中的应用,历时45分钟
8 月 28 号
8月28日下午,接到第四轮的电话,这次比较简单,就了解了一下我做的项目,对项目的设计思路,以及用户量增长 10倍之后的设计思路。
9 月 5 号
9月5号晚上,接到第五轮的面试电话,这一次是部门负责人的面试,问的比较全面,基础,项目设计,深度,算法 都有涉及,以及聊了下为什么来阿里,职业规划之类的,真的是非常基础的都问,比如int和Integer的区别。面完之后, 让内推的朋友看了下流程,通过了,当时开心的不行。
9 月 15 号
9月12号下班前,HR约了我15号下午西溪园区的面谈,我还特地问了下,这是HR面了吗?终于可以谈人生谈理想了,不得不感慨一下,HR中秋都得加班。
15号那天,开了5个小时的车从家里赶回杭州面试,反正就聊聊了,也不需要准备啥,现场有HR和部门负责人,全程都HR在问,想不到全程问我项目设计,各自奇葩为什么,解释的太粗他又理解不对,就反复的问,我感觉我都怀疑自己是否说错了。慢慢熬到了最后,又给了我道算法题,应该是变种题,我心态不对了,加上赶路很累,愣是没有想出最优解,事后想想这题挺简单的,当时也没有聊薪资,聊期望。
出来的时候心情特别沉重,不过最后结果是好的,也算是给自己长了教训,HR也不一定是聊人生聊理想的。
9 月 23 号
一直等到9月23号,终于等到了收集身份信息,体检,背调。持续了一周终于收到了offer。
6 点总结
注重基础的搭建,后面学习就会特别快,并且不是临时记忆。
不管自己身处什么环境,你都有改变自己的能力,我觉得我的环境够惨了。
阿里注重知识的落地应用,得有几个自己擅长的落地方案。
面试的时候很多情况都是被面试官带着走的,如果碰到了自己很难回答的,就在他问你需要问他什么的时候, 把节奏带回来。
自己不感兴趣的就不看,反正看了也会忘,记不住,答的时候还会降低水平,面试官问我网络这块熟悉不,我直接 说不熟悉。
HR并不是谈人生谈理想的。
欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢:
已在知识星球更新源码解析如下:
最近更新《芋道 SpringBoot 2.X 入门》系列,已经 20 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。
提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。
获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。