迎战2021年春招,面试蚂蚁金服,京东,腾讯等六家大厂的面试经验分享!(附300多道面试真题)

一、写在前头

首先,我的面试经历和一下面霸、收割机大佬相比,不是特别丰富,只是略有感悟,分享这几个月来的心路历程,也让后来者可以借鉴一下而已。

二、注重心态

明确一点: offer = 心态(30%)+实力(30%)+运气(40%)

曾经也在春招心态炸裂过,因为看到很多不公平,看到很多觉得侮辱自己汗水和泪水的东西。不过炸裂的几天后想到,如果这样下去,我会给带节奏的,会造成更大的悲剧,所以不行,必须积极起来。

三、春招的暗坑与技巧:(以大厂为目标)

1. 比拼的东西:

  • 春招因为很多人没实习经验,所以比拼列表:学校>实习>项目>奖项
  • 对于学校牛逼的,你很大优势了,只要把基础打扎实,对项目把握大点就ok的。
  • 对于学校不行的,比如博主,麻烦你去实习一下,大胆出去。
  • 对于学校不行也没实习的,麻烦你把项目仔细研究,每个点研究透彻。
  • 奖项?那只是加分项。前三个都没一个,春招就凉凉了。

2.投递技巧:

  • 内推,只有内推。千方百计找到,不然凉凉。
  • 官申时,注意整理成一个文档,方便你复制。当然你也可以用插件,比如白熊,不过不完善。

3.笔试准备:

  • 刷题。详情见牛客。

4.面试准备:

  • 你的知识架构
  • 你的表达能力
  • 你对人家公司的了解
  • 你对项目的把握程度
  • 你的延伸思考
  • 你关注的广度

四、大家最想看的面经:(只写已确认结果的)

1.蚂蚁金服(已拿offer)

蚂蚁是楼主第一次的面试记录,所以不习惯,记录的不详尽,很抱歉。

一面:(45分钟26秒)

  1. 介绍项目,问一堆项目的
  2. tomcat缓存,聊下缓存的整体理解,知道多少种缓存
  3. SQL优化思路,联合索引与底层树结构的映像关系,索引结构(B+、B-),为什么用这样的结构
  4. spring的bean生命周期(详细)、作用域
  5. 乐观悲观锁的设计,如何保证原子性,解决的问题
  6. 看过你博客,解释下lucene原理,倒排索引,怎样进行中文分词,基于什么进行分词
  7. 你是怎么设计系统缓存的,为什么,什么场景
  8. Java基础,说我看过你博客,你就大概说下集合、io、多线程的理解吧。
  9. 介绍下部门

二面:(43分钟10秒)

  1. 自我介绍
  2. 介绍下你在项目中最突出的点。你是怎样设计的,你担当的角色跟设计过程是怎样,遇到的难题是什么,怎么解决?
  3. 你所说的SQL优化,具体是指哪些,怎么做到的。我问需要详细讲解执行计划吗?不需要了。
  4. 你是看过Java源码或者开源框架的源码的吧? 我说:对呀。 面试官:那你看过哪些呢?? 我说:比如Spring、JDK里面的一系列集合类、JUC包下的大部分源码、MyBatis源码等等哔哩哔哩说了一堆,也问一堆。
  5. 那你对自己的学习规划是什么呢??呃,我最近在学习分布式。 面试官:喔?怎么学的,学了些什么?那就说了一堆分布式的东西
  6. 你还有什么问题要问我的吗?

三面:(15分钟35秒)

  1. 大学以来的时间规划
  2. 项目一个功能,功能点是怎样,为什么封装,性能瓶颈问题是什么,讲下解决方案 那你对你的系统怎么进行升级
  3. topN的大数据量题
  4. 为什么选阿里不选百度腾讯
  5. 才15分钟,以为凉凉

四面 :(40分钟32秒)

  1. 自我介绍
  2. 你相比于同届,你有什么优势??有什么case证明
  3. 你说你喜欢新事物,有什么case证明吗?
  4. 项目对你最印象深刻的点?给你什么成长?case
  5. 工作地点要求??
  6. 实习时间?
  7. 你有什么想问我的?

总结起来:

阿里十分注重你对源码的理解,对你所学东西的理解,对项目的理解。并且如果你有你的博客,你的github是一个十分大的加分项。

2.拼多多(已拿offer)

一面:(大概一个钟)

  1. char和double的字节,以及在内存的分布是怎样
  2. 虚拟机JVM内存模型,详细讲下。GC呢?详细点
  3. 对象内存布局,然后讲下对象的死亡过程?
  4. 对象头,详细讲下
  5. syn原理详细,syn内抛异常会怎样,死锁吗?还是释放掉?怎么排查死锁?死锁会怎样?有没有什么更好的替代方案?
  6. CPU高?什么情况cpu高?解决什么问题?
  7. 详细讲一下集合,HashSet源码,HashMap源码,如果要线程安全需要怎么做?
  8. 数据结构学过吧,聊一下?学过什么结构?讲下树和队列?B树呢?
  9. 操作系统学过吧,聊一下?讲一下系统内存是怎样的?分段分页虚拟内存?
  10. 页面置换算法呢?多少种?有最优的置换算法吗?
  11. http和https?http1.0,1.1,2.0,讲下长连接和短连接?https是怎样的?如果我篡改了公钥呢?怎么防止?
  12. 讲下请求头细节?
  13. 平时是怎样学习的?

二面 :(大概50分钟)

  1. 你对后端怎么理解?
  2. 你对接入层要思考什么东西?遇到过哪些问题?搭建系统要考量哪些因素?
  3. 学过MySQL是吧?讲下MySQL的集群?集群遇到过什么问题?sql的优化?你目前为止遇到的最大数据量是多少?知道100万时候怎么设计吗?1000万呢?如果像拼多多那样,过几十亿呢?
  4. 一致性哈希是干嘛的?
  5. 多线程是解决什么问题的?线程池解决什么问题?
  6. 学过计算机网络是吧?socket熟悉吗?对它的读写缓冲区有理解吗?怎么的?那滑动窗口是怎样的?为什么这样设计?拥塞算法知道吗?哪些,分别怎样?
  7. 你有遇到过临界区问题吗?有遇到过吗?你在项目遇到这个问题是怎样解决的?
  8. 搭建高并发高可用系统需要怎样设计?考虑哪些东西,有多少说多少。
  9. 你对缓存有什么理解?缓存是解决什么问题?后端缓存有哪些,分别解决什么问题?
  10. 你有什么想问我的?

HR面:(40分钟左右)

  1. 你父母做什么的?
  2. 为什么从事互联网?
  3. 你对加班怎么看?
  4. 说了下拼多多的情况
  5. 聊下拼多多这款产品
  6. 薪资(老实说,很高)
  7. 还有啥疑问。

总结:

拼多多比较注重你的架构能力,实战能力,还有一些普通的基础。

3.滴滴出行(已拿offer)

一面: (48分钟36秒,视频面)

  1. 聊会人生
  2. 自我介绍
  3. 聊下HashMap源码,有多详细讲多详细,死锁问题,解释画图。然后synMap和concurrentHashMap,主要的设计原理。
  4. 线程池,如何设计的,里面的参数有多少种,里面的工作队列和线程队列是怎样的结构,如果给你,怎样设计线程池?
  5. AQS原理,ReentranLock源码,设计原理,整体过程。
  6. 继续聊多线程源码,syn原理,然后一个场景设计题
  7. 聊一下分布式锁
  8. 聊一下架构,接入层架构,服务层架构。聊下技术栈,spring boot,spring cloud、docker
  9. 聊下spring源码,知道多少,都聊一下
  10. 聊下spring注解,@Autowire,@Resource,以及他们的解析过程
  11. 然后项目问题,优化问题
  12. 你有什么想问我的?

二面:(32分钟36秒,视频面)

  1. 聊下人生,聊多少offer了,怎样实习,实习时间,转正问题。
  2. float f = 1.4f;double d = 1.4d; 与 float f = 1.5f;double d = 1.5d; 是否为true,内存是怎样的
  3. split的源码,split(“a|b|c”);得出多少个数组
  4. 熟悉maven是吧?我们来聊下maven的源码原理,maven冲突的时候,怎么选择依赖包,我们怎么查,我们遇到两个不一样的版本,我们应该如何去选择,为什么?
  5. 怎么认为一个类是线程安全? 线程安全的定义是什么? Java有多少个关键字进行同步? 为什么这样设计?(聊了一大堆,一堆为什么)
  6. 两个线程设计题。记得一个是:t1,t2,t3,让t1,t2执行完才执行t3,原生实现。
  7. 写个后缀表达式,为什么要设计后缀表达式,有什么好处?然后写下中缀。
  8. 你学过什么课程?然后聊下操作系统,内核、用户之类。
  9. get和post,讲下区别,要我模拟出抓包来。

三面:(56分钟32秒,视频面)

  1. 说下你印象最深的项目,架构、设计都讲讲。解决什么核心问题,成长了什么东西
  2. 你说的SQL优化,怎么优化的,怎么思考的?整体讲下数据库优化
  3. 说下最近学了什么东西?我说了分布式、深入Java虚拟机。
  4. 讲下JVM优化?讲下怎么思考分布式的东西,说下学到什么程度了,都详细讲讲。 有没有什么实践的??多少种RPC框架?都讲下。 虚拟机学到多深了??讲下?
  5. 详细讲下cookie和session,token,OAuth2.0协议
  6. 你是怎么理解spring的,ssh框架呢?
  7. 有什么想问我的?

HR面:

  1. 聊下滴滴的业务
  2. 实习时间
  3. 什么时候报道
  4. 以后的职业发展问题
  5. 还有啥offer

总结:

滴滴出行,很难。有的问到灵魂深处。比较注重对一些细节的把控,源码的理解,框架的理解。

4.腾讯:(内推二面挂了)

一面:(35分钟)

  1. 你的项目是怎么开展的,你的协同过滤算法是怎样的?数据模型是怎样?为什么这样设计
  2. JVM内存模型,1.6聊到1.8
  3. 项目,这个功能怎么设计的,怎么做的,进行了什么优化。索引的缺点?
  4. 聊聊并发包你了解多少,都说说
  5. 你的项目涉及到任务调度quatz问题,是怎么设计的。有什么经验分享下吗?
  6. 嗯,来道基本的动态规划吧,钱币问题。
  7. 你有什么想问我的?

总结:

没完全面完,无法总结评价,据说今年鹅厂收3000人,可能我还不够水平吧。

注:篇幅问题只写4家,完整链接:迎战2021年春招,面试蚂蚁金服,京东,腾讯等六家大厂的面试经验分享!(附300多道面试真题)

无论是正在春招的人,还是以后春招的人,祝福你们!希望你们拿到想要的offer。

读者分享

针对于上面的文章我总结出了互联网公司java程序员面试涉及到的绝大部分面试题及答案做成了文档和架构视频资料免费分享给大家(包括Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术资料),希望能帮助到您面试前的复习且找到一个好的工作,也节省大家。

image

资料免费领取方式:点这里 找管理小姐姐免费获取!

更多架构专题及视频资料展示如下:

image

资料免费领取方式:点这里 找管理小姐姐免费获取!

image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值