作者:梅伦
链接:www.nowcoder.com/discuss/138979
来源:牛客网
壹
前言从去年8月份左右开始准备春招,在牛客上找项目练手,还跟小伙伴一起凑钱报了那个电商项目实战,然后就是看书,前期其实不是很认真的准备。
到了大概1月份的时候,就全身心投入到准备春招了,整理各种资料,刷面经,牛客刷题,春节假期就回家几天然后就回学校继续备战了,开学之后基本没怎么去上课(这点不一定所有人适用)。
那段时间经常紧张到睡不着,呕吐这些都经历过,一开始面试的时候精心准备的自我介绍都说不好,面试多了,到后来跟面试官谈笑风生。
终于在3月份左右就拿个几个offer,然后结束春招,去公司实习了。
实习的公司特别忙,到了7月份才开始准备秋招,基本也没什么时间准备,只能利用下班的时候看看资料和看看面经,没时间刷算法题,所以笔试的时候很吃亏。一直都是边上班,有笔试或者面试就请个假这样的状态。幸好春招的时候基础比较牢固,很多知识点看一看就回忆起来了。
多亏了实习的时候一直跟leader争取分多一点项目给我做,所以简历上很多项目经历,不过面试官在面试的时候都只会挑一两个你认为最好的来问,其它的项目估计是个加分项。
做过的项目一定梳理一下,整理出用了哪些技术点,为什么要这样设计,原理是什么,哪里可以优化,这些都是面试官很看重的。
10月份收到心仪的offer后,就结束秋招了,收拾收拾准备出社会了。又有一场硬仗要打
看过的书:(大话设计模式+Java虚拟机+面试宝典+NoSQL+大型网站技术架构+MongoDB+Effective Java+剑指offer+程序员面试指南)
贰
秋招面经大全秋招面经(阿里+网易+蘑菇街)
阿里
一面:
Hashmap结构
多线程并发操作hashmap会有什么问题
有什么线程安全map
红黑树
时间复杂度
乐观锁了解哪些
数据库执行引擎
索引
IO模型
Dubbo架构
平时怎么学习
线上故障怎么排除
操作系统用的是什么
Linux命令知道哪一些
如何查看内存
如何查看线程
看过哪些书
看过哪些源码
Netty内部结构
Channel和pipeline了解吗
线程池
阻塞队列
二面:
讲一下较为自豪的项目
一直追问项目,一直追,项目大概谈了40分钟
其中涉及异常分类,业务难点,为什么用分布式锁而不用乐观锁,缓存与db的一致性,有没有处理过疑难杂症等等
给一个前序遍历和后序遍历,构造一个二叉树(答案是不能唯一构造,有很多种情况)
两堆水果,A堆70%黄,30%绿,B堆50%黄,50%绿,随机选出一个,是绿色, 从A堆抽出来的概率是多少,B堆抽出来概率是多少
反问环节
总用时60分钟
三面:
主追项目:
为什么这么设计
哪里可以优化
有哪些比较难的技术点
你对哪个技术点比较熟悉(数据库)
说一下各种关系型数据库与非关系型数据库的优劣
项目中用Redis做什么用途
用MongDB做什么用途,最开始为什么选用这个,优势在哪里
MongoDB底层如何处理数据
MongoDB一次写入的全过程描述一下
整个过程比较深入探讨某项技术,过程中有引导,然后一直追问下去
四面(交叉面):
介绍一下实习期间这段经历,项目的框架讲解一下,
为什么即用MySQL,又用Redis,又用MongoDB
现在项目DAU是80万,并发不高,如果并发去到百万甚至上千万,那怎么优化你的项目
现在接口能承受最大的TPS是多少知道吗?(不清楚。。。)笑着问不清楚就上线了??(交给了测试部门测。。。),非常尴尬
简历有写到风控反爬,你知道它门是怎么回事吗
分库分表有用吗(用了分表),用什么算法做的(CRC32),为什么不用一致性hash,两者有什么优劣势,原理分别是怎么样的
有什么你项目中考虑到安全性的点
项目中有写到异步线程,哪里用到,为什么用(减低延迟),除了你说的这个,线程池还有哪个需要注意到的点(队列满会抛弃请求??)
反问环节
HR
自我介绍
拿过哪些奖
最好的项目
对自己现在所在公司的模式的看法(拼多多)
投了哪些公司
平时开发有特别注意哪些问题吗
平时有去研究自己感兴趣的技术吗
HR面试题
蘑菇街
一面
例牌自我介绍
做过什么大型项目
QPS多少
项目有什么难点
全表扫描慢的话怎么解决
数据库锁有了解吗
间隙锁呢
Synchronize锁有了解吗
Netty有了解吗
Dubbo、kafka这些开源项目有了解吗
Kafka有应用过吗
HashMap
CurrentHashMap
还在公司实习吗
不考研吗?
反问环节
全程20分钟,创造了技术面最短时间记录。
基本上是问你会XXX吗?,我答会的,它是(刚准备回答),好,那XXX会吗?
无限循环,没有给我细说的机会,估计是面试官挺忙的,毕竟要面这么多人
二面
算法:二分查找有序数组中特定关键字,有部分关键字可能相同,找出所有下标
Lock和synchronize
学校项目
实习项目
有哪些可优化点
数据库索引
Zookeeper如何保证一致性
Rt抖动如何判断
看什么书
优缺点
一个小时多几分钟
三面(HR面):
聊人生价值观
期望薪水
是不是单身实习经历
工作城市有没有要求
四面(CTO):
面试官自我介绍(安全部负责人)
聊一下对实习公司的运营模式的了解(拼多多)
实习的项目介绍一下
了解到滴滴公司最新发生的几次安全相关的事故吗?从技术人员的角度分析一下如何避免
项目遇到最大的困难
还有一些问题忘了
反问环节
五面(不知道什么情况被加多了一面,感觉也是个大佬级别人物)
面试官自我介绍
实习的项目介绍一下
项目遇到最大的困难,怎么解决的
为什么不留在现在的公司
你选择工作岗位的要求是什么
还有一些问题忘了
反问环节
网易
一面
主要聊项目,做的项目比较多,面试官让挑一两个我最看好的项目聊
聊里面的技术点
为什么这么设计,现在回头去看,哪里可以优化的地方
其中一个底层项目,涉及技术点比较多,面试官让画出整个项目框架并讲解
听说你们公司加班比较严重是吗?
为什么在实习然后出来面试
谈谈对实习公司的业务模式的了解(好像很多面试官都对本渣渣的实习公司很感兴趣)
list里10万个数据,多线程求解,伪代码
实现一个top10排行榜,用户量巨大
那最后也问一些基础知识吧,(我直接回:基本的应试问题我有做准备了),互相笑场
那你讲讲hashmap吧
反问环节
我问了部门主要做什么业务,面试官很热心,将了部门业务,以及市场前景,以及跟相同产品的竞争对手的优劣势等等
二面:全程高能
都知道tomcar8是NIO,那么tomcat7的BIO tcp不高,有哪几方面可以优化,怎么调参数优化
nginx反向代理的底层原理是怎么实现的
nginx线上优化有做过吗
mybatis动态标签,写一个具体例子
mybatis底层原理你了解吗
springMVC一次调用过程,拦截器在调用的哪个位置实现
拦截器能干嘛,包装异常?不对,应该用aop,aop除了用aspectj还有另外一种知道是什么嘛
Java线程池有哪几种
Single、fixed、cache这几种底层都是用的什么?
有哪几个参数
single方式,fixed方式和cache方式分别用了什么队列,为啥
hashmap了解吗(面试官估计想缓解尴尬气氛)
Linux用户态和内核态区别
两者转换的时候底层的数据结构知道吗
进程和线程(继续缓解尴尬)
Linux写一个用于定时删日志的脚本
那我问最后一个问题吧:实现一个微博系统(反问:整个微博系统,还是某一部分),整个系统(震惊......)
从鹿晗的2000万粉丝崩溃事件入手分析一下原因
三面(HR非常严肃)
自我介绍
介绍实习经历
看你做了这么多项目,有那几个是你认为做得最好的
你觉得最大的成就(回答:某某项目做的取得很多的成就)
这个成就对你来说有什么影响(回答:让别人放心让我去开发更重要的系统,可以向leader请求分配给我更重要的任务)
那你有去争取吗?(有的,那个某某项目就是之后我做的)
你在这个项目扮演了什么角色
你推荐你的系统给其它人用的时候有什么困难,怎么解决这个困难,你觉得解决这个困难,你做的最关键的一步是什么
就做的这一步就解决了吗?如果他们还是有不懂的地方怎么办?
平时有什么兴趣爱好
有什么优缺点
反问环节(HR小姐姐应该是累或者是我问得不好,不是很积极回答反问环节)
叁
大三春招实习面经
春招面经主要公司是:酷家乐+拼多多+CVTE+阿里+37+京东+360企业安全
酷家乐实习一面:
1. 自我介绍
2. 追问项目,做了哪些功能,为什么这么设计,提出新功能,如何做出来
3. 项目的并发量
4. 问sql语句
5. 有序数组排成二叉搜索树(层层深入,面试官很nice,耐心引导,)
6. 索引,B+树
7. CAS与读写锁
8. 锁,可重入锁
9. Tomcat集群
10. Tomcat同步
11. Redis缓存
12. 密码加密MD5
13. 有什么问题想问的
酷家乐实习二面:
1. 自我介绍
2. N个红白蓝三种小球,乱序排在一起,两两交换,要求从左至右排序成红白蓝
3. 二维数组,行递增从左至右,列从上到下递增,给一个数,求出该数的位置
酷家乐实习终面:
1. spring IOC
2. spring AOP
3. hashmap
4. concurrentHashmap
5. 在线编程,日期转换
拼多多实习一面
1. https
2. 公钥的具体信息
3. 数字签名如何工作的
4. 输入一个网页按回车之后的过程
5. Github各种命令
6. github的commit命令的id序列号是如何生成
7. 判断链表是否有环
8. 找链表倒数第K个结点
9. 将字符串“345”转换为整数345
10. Base64
11. JVM内存模型
12. 数据结构的堆栈
拼多多实习二面:
1. java几种数据类型
2. 数据类型各占多少字节
3. Char能存中文吗
4. UTF-8编码了解吗
5. 各种集合
6. Synchronized
7. Volatile
8. String源码
9. StringBuilder源码
10. 项目
11. 有了解分布式系统吗
拼多多三面
1. 一百台服务器同时部署一个应用,如何处理
2. 数据库优化
3. 如何处理数据库高并发
4. 会脚本语言吗
5. 会python吗
拼多多HR
聊人生,聊工资待遇
CVTE实习一面
1. 为什么请求过来时可以找到在注解中的URL路径
2. 自己写注解实现增强的思路
3. 动态代理
4. 合并有序链表
5. Hashmap原理
6. 数据库索引例子分析
7. 数据库优化
8. TCP与UDP区别
9. TCP粘包拆包解决
10. 数据库存储引擎
11. 数据库索引原理
12. 类加载过程
CVTE实习二面
1. 数据库索引(聊得比较深)
2. 数据库优化
3. MyBatis分页原理
4. Limit语句
5. 画项目结构图
6. 继续深挖项目
7. 项目为什么这么设计
8. 给了一个场景题,学生,教师,家长,如何实现自动每周生成教师对学生的评价给家长
CVTE HR
问父母情况,女朋友情况,最不喜欢什么人,给你offer的话会因为什么原因不来,最紧张的事,梦想,想去什么公司,工作时间薪资待遇,想在哪个城市工作,已经拿了什么offer,为什么来应聘这个岗位
阿里巴巴-蚂蚁金服-测试
1. 介绍一下自己的项目,看的书,成绩,课外之余喜欢做什么
2. 学校项目
3. 如何跟客户端进行交互
4. Netty原理
5. 用户权限如何校验
6. 数据库优化
7. 缓存与DB的同步
8. 如果写缓存失败怎么办
9. 如何做黑盒测试,白盒测试(答得不算好,漏答边界条件)
10. 面试官介绍公司业务,问我感不感兴趣(那当然感兴趣了)
37互娱
实习一面
平时看什么书
ArrayList与linkedList
乐观锁实现原理
悲观锁实现原理
多线程(非常深入,给了几个游戏场景题,问需要多少个线程来解决)
Netty线程模型
SpringAOP
springIOC
反射
字节码增强
Mybatis的事务管理
String
二面:
个人项目
HashMap
Netty框架
Netty处理流程
NIO
管道Pipeline
Tomcat集群的单点登录
横向越权与纵向越权
JVM内存模型
GC
内存泄漏与内存溢出
SpringMVC处理流程
HR面
1. 参加了什么社团
2. 参加了什么比赛,成绩怎么样
3. 在学校做了什么项目,团队多大,什么角色
4. 哪里人
5. 父母在哪里工作,支持你从事这行吗
6. 独生子吗
7. 拿了多少offer,他们给工资多少
8. 从哪里知道37的招聘信息
9. 觉得37怎么样
10. 有什么需要问我的
京东1面:
在群里看别的小伙伴都是15分钟,20分钟,30分钟就能结束一面,我电话面了62分钟41秒(临结束还让我写算法,然后微信发过去,所以实际上应该有90分钟)……
1. 例牌自我介绍
2. 讲讲对多态的理解,以及应用
3. 为什么重写equal就要重写hashcode
4. 类加载过程
5. 为什么要有双亲委派模型
6. Object类被加载几次,为什么
7. Final修饰的类的方法能被重写吗
8. 谈谈Object类里面有的方法
9. ArrayList源码分析
10. HashMap源码分析
11. HashMap一个线程在扩容,另一个线程来添加数据,会发生什么,为什么
12. SpringAOP,不用给我讲什么切面之类的,讲讲原理。。。
13. 有哪几种动态代理
14. 他们的区别
15. 线程池的原理
16. 为什么这种线程池用这种阻塞队列,为什么不用那种阻塞队列
17. JVM内存模型
18. 哪些会OOM,为什么
19. 堆的结构
20. GC的过程
21. GC涉及了什么算法
22. 对象分配过程
23. 哪些对象是GCRoots
24. 了解哪几种收集器
25. CMS工作原理,会stop the world吗?为什么
26. JDK1.8默认的收集器是哪种
27. 事务隔离级别
28. MySQL默认是哪种,为什么是这种呢?
29. 那会死锁吗?为什么呢?
30. InnoDB锁在数据具体哪个位置?
31. InnoDB存储引擎
32. 索引呢?为什么是这种索引?Hash索引好像也不错阿,为什么不用
33. 什么情况下索引失效呢?为什么
34. MySQL如何处理高并发
35. MySQL集群的话,如何处理从库与主库数据不一致问题
36. Redis有用过主从吗?集群呢?
37. 一个对象里,有一个实例方法,一个静态方法,都用了Synchronized,会怎么样
38. 讲讲Synchronized原理
39. 你刚才提到了可重入锁,讲讲对它的理解
40. 谈谈Volatile
41. 反问环节,面试官超好,让我把我熟悉的那方面告诉他,他写在报告里,然后让下一轮的面试官来问我。
42. 算法(链表环),电话讲思路
43. 一个数组里面找重复元素,挂了电话之后,回去用电脑写出来,微信发过去。
京东2面:
1. 自我介绍,这么熟练你的自我介绍是背下来的吗?(尴尬而又不失礼貌的微笑)
2. 哪里人,为什么想来北京
3. XXX项目的数据库表总共有几个
4. 谈谈项目总共分几个模块
5. 项目的XXX功能是怎么实现的
6. 说一下项目的一次运作流程
7. 说一下输入一个网址之后,到最终呈现给用户,谈谈中间发生了什么
8. 谈谈单点登录时怎么解决的
9. Redis了解什么数据结构
10. 用过Redis什么数据结构
11. 除了Java还会什么语言
12. Spring的类加载
13. Servlet与jsp
14. SpringMVC相比Servlet的好处
15. 设计模式有用到吗?(单例,工厂模式就不需要讲了)
16. 为什么要用设计模式
17. 平时怎么学习
18. 除了技术方面,平时有什么安排
19. 反问环节
20. 面试官非常好,结束之后,微信发了技术方面的电子书给我,还说以后有什么问题,校招进展都可以跟他聊
京东HR
1. 感觉自己前两面怎么样
2. 课多不多,什么时候能来实习
3. 为什么想来北京
4. 做的项目用的都是JAVA吗?
5. 平时怎么学习
6. 有哪些offer
7. 反问环节
360企业安全一面
1. 多态
2. 面向对象特性
3. Final关键字
4. 快排
5. 自己最熟悉哪些方面的技术
6. 还有一些忘了
360企业安全二面
1. 聊了很久项目
2. 加密
3. https
4. http状态码
5. GC
6. Redis与memcached区别
7. 熟悉Redis哪些数据结构,用过吗
360企业安全HR面
直接就问什么时候可以去实习
肆
后记最后献上一句给正在努力的各位:
花有重开日,人无再少年(游戏、玩耍、聚会这些以后都可以有的,但为了未来而奋斗的秋招,只有一次)
分享你最关心的技术、求职、学习与生活那些事
网友评论