阿里菜鸟+腾讯IEG面经(阿里5面,腾讯8面)无限秽土转生

写在开头

收到阿里实习生意向书也有十天了,也完整的经历了互联网春招的历程。虽然已经收到offer了,但是每天还是不断在刷牛客的讨论帖,看看大家的状态。一路走来也很感谢牛客这个平台(虽然在平台投的简历大都没有回信-,-),也是从当初的看大家的面经一脸懵逼到现在一路走来收获了阿里和腾讯的offer。所以还是打算写一篇帖子回馈一下牛客哈哈~

回顾

从7月初开始,一共收了了三个offer,同城艺龙(最早面的),腾讯IEG运营开发,阿里巴巴菜鸟网络Java研发。因为腾讯过了,所以期间陆续放弃了快手、携程的面试和网易、百度等大厂的笔试(比较懒,有点后悔,其实应该去面面涨涨经验的)。头条也投的比较早,当时还没准备充分其实,连最基本的堆排序都没有写出来,硬撑到三面挂了。其他也投了一些公司,不过大都没有下文了。

总的过程也比较曲折,腾讯一共面了四个部门(也就是被捞起来三次,无限秽土转生。。),共面了八次,两次一面挂,一次二面挂,最后IEG是三面技术面+一面HR通过面试。。阿里原本投的是天猫,但是在三面后流程被转到了菜鸟网络,最后是在北京现场加面了一面技术面和一面HR面,顺利通过面试。

腾讯给我的面试体验是比较好的,每面之前都会电话或者邮件预约时间,很人性化。头条是现场面,每面反馈也非常快,大概10-20min,中午还管了饭。阿里战线拉的最长,每面之间都要隔1-2周吧。所以投阿里的小伙伴一定要稳住性子,毕竟有海量简历需要处理,也可以理解。

过程是曲折的,好在最后的结果是好的吧。也希望还没有理想offer的小伙伴不要着急,稳扎稳打,还有很多机会。

经验

经历了这次春招,也有了一些自己的体会,和大家分享一下吧。

  1. 提早准备。金九银十是真的,九月到十月份这个时间点机会是最多的,所以一定要提早准备,多刷题、多看面经。不要抱着我还没准备好的态度,面试经验是一点点积累出来的,面的越多越知道自己的薄弱点,越自信。
  2. 《剑指offer》简直是本神书,刷五遍也不过分。再结合面经多刷一些面试经典算法题,把基本的数据结构,查找,排序算法都搞清楚,能手写,基本可以应对80%的面试。
  3. 简历很重要。多找找以前的学长学姐,对自己的简历多指导一下,一分简洁大方,重点突出的简历是很有加分的。
  4. 态度真诚。对于面试中不会的或者有些遗忘的点,可以直接和面试官说我这里不是很清楚,不要不确定的情况下硬去回答,这样反而效果不是很好。
  5. 基础最重要。总的来说,越是大厂对基础越为看重。甚至spring都没用过,只要你的算法数据结构,操作系统,计算机网络,Java基础,JVM,并发这些都能够理解的比较好,通过面试也是完全没有问题的。

附上腾讯和阿里面经

注:由于是后来回忆的,所有有一些问题记不大清楚了,只能记住个大概

腾讯

一面( 挂)

聊项目(20min左右,主要针对项目架构和一些感兴趣的点深入的问)
TCP三次握手,四次挥手
知道哪些树的结构,分别介绍一下
算法题,给一个数组构造二叉排序树,二叉树的层次遍历,时间复杂度,空间复杂度。

一面 (被腾讯音乐捞起来)

开头:能实习吗?什么时候能,
TCP三次握手
TIME_WAIT发生在什么时候
select/epoll了解么(不会,那跳过吧)
说一下进程间通信吧
说一下进程调度
哈希表了解吗,说一下
说一下快排
说一下归并排序
智力题:100个硬币,有一个坏的,怎么快速找到,时间复杂度
redis介绍一下,为什么速度快? 单线程如何保证高并发?
rabbitmq介绍一下,了解哪些消息队列产品,为什么用rabbitmq
平时课余时间都做些什么,怎么提高自己的技能?

一面PCG无线运营

真的好基础
常见的算法

二面 挂了

说一下Mysql结构。。???怎么存储的
Mysql引擎有了解么,介绍一下
Mysql主从复制过程
事务特性
Mysql怎么实现持久性,高可用
OSI三层模型
网络层协议
TCP和UDP的区别
HTTP说一下,HTTP请求头请求行,有哪些状态,请求头有哪些,HTTP方法有哪些
linux,查看系统状态的命令,查看磁盘的状态?
redis介绍一下,redis常见数据结构,zset怎么实现的
redis高可用怎么实现的,高可用怎么实现,集群怎么实现,主从复制怎么实现
hadoop了解哪些,hdfs架构说一下,怎么实现高可用
hadoop中的nameserver都存储了哪些东西?文件结构是怎么样的?(一脸懵逼)
啊,redis和hadoop还不如不写我擦,被虐的好惨啊!!!

腾讯一面 

基础知识,基本就是围绕网络,数据库,那些,都答腻了。。。
介绍一个最熟悉的项目
自己实现过哪些数据结构,快排和归并排序的时间复杂度,空间复杂度
Java 的 volatile有什么作用,怎么实现的
垃圾回收,内存模型
题目一道,两数之和,双指针

腾讯二面 

自我介绍
项目情况,哪些是自己实现的,项目细节 10min左右
用过python和go么(答用过py,主要是java技术栈),就没继续问了
家庭情况,自己以后的规划
介绍了部门情况,问IaaS Paas知道吗
知道SQL注入么
项目对安全有什么考量,怎么增加项目的安全性
项目部署在哪里,用过linux么
说一下知道的linux命令吧,怎么查看系统负载? 端口占用?
shell编程会吗?
自己的优点有哪些

腾讯三面 

家庭情况
实习时间,自己未来的规划
项目情况,项目整体架构,针对性的提问 10min左右
用过python和go么,python用过哪些库
Java内存模型
Java并发,怎么实现多线程
Full GC
多线程并发问题,怎么解决
Java并发控制,锁机制,怎么实现的
说一下乐观锁
Mybatis和Hibenate的区别,为什么用Mybatis
Mysql的并发量?锁是怎么加的?
RabbitMQ怎么用的

HR面 

家庭情况
未来的职业规划
为什么考研?
知道自己的部门吗,有什么看法?
什么时候能入职?

阿里巴巴

一面 

自我介绍
项目劈里啪啦,主要针对项目里使用的技术,问了大约二十多分钟
知道哪些树的结构,树、二叉树、平衡二叉树的应用
知道哪些集合类,线程安全的呢,concurrentHashMap原理
看过哪些jdk源码,平时都怎么学习?
springMVC原理,Spring AOP 实现原理
聊聊毕设 分布式存储相关 优化策略
负载均衡策略有哪些
数据库分表策略,分别都对应哪些场景
秒杀系统里怎么做的流量控制,QPS 3000,那么 6000+的请求来了怎么办
设计一个分布式存储系统考虑哪些
设计一个分布式架构怎么设计(负载均衡,缓存,一致性等等)
觉得自己有什么缺点
觉得自己有什么优点
有什么要问我的吗
总体来说主要问项目,和针对在校的情况进行一些有针对的提问,问的基础并不多,可以定义为简历评估面试。

二面 

自我介绍,夹杂各种学校的事情
怼项目,设计,担任的角色
hashmap,对象可以当key吗,有什么注意的地方,线程安全吗,有什么线程安全的map
equals和hashcode有什么关系
gc了解吗,垃圾回收算法,策略
一个线程等待四个线程,怎么做
BloackingQueue有哪些,介绍一下
线程池策略,10个核心线程数,再来一个,怎么办
Synchronized的作用域,修饰实例方法和静态方法有什么区别
数据库事务隔离级别,分别会产生哪些问题
IO模型有哪些,答阻塞和非阻塞,感觉好像被鄙视
在rocketmq社区都做哪些事情
平时怎么学习
在技术上做的最自豪的一件事
有什么想问我的吗

在线编程测验

二叉树的层次遍历
5个线程分别计算一个数组的和,主线程汇总结果。
两道都A了,面试官说可以,今天先这样

三面 

晚上9.30了都,刚做完笔试,脑袋懵呢还,接到电话。
项目介绍,分别介绍,怎么优化,主要针对项目用的技术问,大概15min左右,基础问的不多
select和epoll区别,自己用过么
socket代码怎么写,你用的哪种,服务器端和客户端怎么写的
数据库隔离级别,分别会出现什么问题
垃圾回收知道吗,虚拟机什么时候会full gc
二分排序知道么(二分排序???我一脸懵逼,后来发现好像意思是二路归并排序。。)
算法:统计大写字母出现顺序,并且排序

之后就是漫长的等待,大概等了三个周。。。

四面 北京现场面 

自我介绍
问实验室的项目(大概有20min左右,也是分别问了项目架构和一些细节)
socket怎么写的,用的什么模式,NIO知道么,是阻塞的还是非阻塞的,同步的还是异步的,怎么实现。
rabbitmq介绍一下,为什么用。有哪些模式,你用了哪些?
设计模式知道吗,介绍一下,有哪些应用?
数据库熟悉吗?熟悉哪个?介绍一下(说了Mysql InnoDB引擎的一些特点),有什么好处
为什么需要事务? 解决了哪些问题?
MVCC了解么,说一下,解决了什么问题。版本号改成时间戳可以吗?
sql优化有了解么,说说一些需要主要的地方。sql执行慢怎么办?
web项目中中文乱码怎么解决的
spring介绍一下,spring ioc有什么好处,怎么解耦的。spring aop原理
类加载机制介绍一下,有两个同名的类怎么加载(能编译无法运行)
最后一个问题,浏览器输入url到页面显示发生了什么

五面 hr面 

自我介绍
我说了我的名字,然后开始聊关于改名起名的事23333
大学学生会活动,一些活动细节
家庭情况
为什么考研
说说做过最极端的事
职业规划,为什么想来阿里
说说自己的优点
说说自己的缺点
问问题,什么时候能出结果?答 最早五一之前
总体聊的挺开心的

我是如何拿到大厂offer的?

第一件事:分清阶段,制定计划

从我大学之后,我清晰到自己的现状,也明白要想改变自己的人生,那就要懂得去规划。所以,从我实习工作开始,就已经对自己的职业生涯开始进行了一个规划,而我的规划很清晰地分成了几个阶段,也把每个阶段的目标和重心确立了下来。

  • 第一阶段:0~3年;我给自己的第一个时间就是3年时间,3年完成第一次跳槽,而且需要跳到更大的平台。
  • 第二阶段:3~7年;确立自己的发展方向,技术专家、架构师、CTO或者产品均可,但我知道,无论是朝哪个方向发展,技术知识的储备一定要系统完善。
  • 第三阶段:7~未来;这个阶段,我应该完成了自己的发展方向,这个时候需要思考人生,或者继续自己的爱好,享受生活,也或者开始进行创业。

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

第二件事:梳理知识,重新学习

在唯品会的三年里,我为跳槽做准备,也为第二阶段的发展方向做准备,所以梳理自己的知识,让自己重新开始学习。这三年里,我从未落下过提升自己,自己的学习方向也是按照自己梳理出来的知识路线进行的,一步一步,有条不紊。

  • 架构师筑基必备技能:并发编程,JVM,网络编程与高效,MySQL,Tomcat
  • 设计思想解读开源框架:SSM框架(Spring+SpringMVC+Mybatis)
  • 性能直线提升架构技术:分布式,ZK,Nginx,RabbitMQ,RocketMQ,Kafka
  • 高效存储让项目性能起飞:Redis,MongoDB,MySQL高可用,Mycat,Sharding-Sphere
  • 分布式扩展到微服务架构:SpringBoot,SpringCloud,SpringCloud Alibaba,Docker,K8S

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

第三件事:勤写博客,多做笔记

合格的开发人员一定是要养成良好的学习习惯和工作习惯的,程序员为什么要勤写博客,多做笔记?理由很简单:

  1. 整理思维、加强理解。
  2. 方便未来、回顾复习。
  3. 记录成长。
  4. 锻炼写作文字组织能力。
  5. 跟其他人反馈、互动,别人会发现一些你发现不了的问题,提升你的思维。

关于这三年来,我也算是写了不少博客,制作了不少笔记类的PDF,可以免费分享给大家参考一下,包括Redis学习笔记,SpringBoot核心笔记,MySQL调优笔记等等。

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

Redis学习笔记

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

SpringMVC开发笔记

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

SpringBoot-核心技术笔记

第四件事:社群互动,拓宽圈子

人脉的重要性,相信每一个工作的社畜心里都清楚,而我们开发者同样也需要积累自己的人脉。所以,在唯品会的三年里,我并未只是早出晚归,整天对着电脑工作,我会利用自己的剩余时间,去参与到一些社群里,与同行交流,参加一下线下的会议或者活动是我比较直接的扩宽圈子的方式。

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

第五件事:懂得复盘,准备面试

我学会了复盘自己,每年给自己的一个总结,包括知识、工作、生活及情感等各个方面,是否把自己的丰富度进一步地提升了。今年是我第一阶段的第三年收尾,也给自己这三年来做个一个总结,同时也要开始开展我的跳槽计划,然后准备面试。

关于面试,我也做了一些系统且全面性的准备:

  • 整理面试知识点

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

  • 刷题刷题刷题

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

唯品会三年,我只做了5件事,如今跳槽天猫拿下offer(Java岗)

 

总结

外行对于程序员的认知很单一,也有很多刻板印象,但不管如何,作为开发人员的我们,自己一定要正视自己。如果我们连自嘲和自卑都分不清楚了,那发展也就仅限如此了。

所以,尽早规划自己,朝目标发展,才是上策之道,而不是怨天尤人,等到30岁后再去焦虑。

希望大家能一起进步,文章以上所有的资料均可以免费分享给你们,需要的朋友可扫码获取

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值