在经历了两个月心累的面试以后,本人准备放弃治疗了,手动结束面试。分享一波面经(纯干货)~
方向:Java后台开发。说实话Java没怎么系统学过,主要就看了Java虚拟机和高并发那两本书,然后看了优秀师姐的笔记和一些面经,剑指offer勉强刷了一下,应付一下面试这样,菜的抠脚那种下面来介绍一下走心春招面经。
一、腾讯-企点(一面挂)
人生处女面就交给腾讯了。。。这处理速度也太快了,随便填了个信息隔天就翻我牌子了。。哭了,那时的我啥也不会,紧张得脑子一片空白,但面试官还不错,为了不让我那么尴尬已经尽力尬聊了,感恩!
(1)Java的垃圾回收机制
(2)Full GC
(3)mysql存储引擎
(4)七层模型,每层用的协议
(5)Linux常见的操作指令
(6)堆和栈
(7)redis特点?和Mysql区别?缺点?数据存储在哪的
(8)mysql数据存到哪的?
(9)数据库有没有建索引,底层实现
(10)项目:用的什么协议,底层发过来的数据是什么格式,协议是怎么定的
(11) 数据库常用什么数据类型?Char和varchar的区别
(12)TCP粘包/拆包
(13)TCP/UDP区别
(14)代码测试: 给定一个正整数,编写程序计算有多少对质数的和等于输入的这个正整数,并输出结果。输入值小于1000。如,输入为10, 程序应该输出结果为2。(共有两对质数的和为10,分别为(5,5),(3,7)) 输入描述:输入包括一个整数n,(3 ≤ n < 1000)
二、阿里-阿里云-数据智能部(交叉面挂)
一面:
1. 平时用过哪些集合?
2. Map ,hashmap底层实现?链表过长怎么办?红黑树特点 复杂度
3. 乐观锁和悲观锁,数据库是怎么实现的,数据库语句?
4. 内存泄漏,out of memory
5. FullGC什么时候会发生
6. 主从复制流程
7. 姓名、科目、成绩,写sql语句统计总分前三的学生姓名,如果有并列的怎么办?统计这个班的学生选了哪些科目
8. Java内存模型
9. Arraylist线程安全吗?有其他数据结构是线程安全的吗?
10. 分布式结构,怎么保证数据一致性?如果从服务器出问题了怎么办?
11. Linux系统下的常用指令
12. 了解大数据嘛??
13. 秒杀系统?十个东西是十一个人抢,怎么保证不出问题??
二面:
1.归并排序?
2.平衡二叉树?hashmap底层实现,红黑树特点?
3.栈用过吗?用栈实现二叉树非递归中序遍历
4.outofmemory,内存泄漏
5.线程池,怎么实现的,要注意什么?
6.i++ automicInteger,线程安全类,三个指令,重排序
7.线程竞争
8.Linux常用指令,如何查看某个ip被哪个进程占用
9.乐观锁悲观锁,在Java中的体现,举例
10.垃圾回收,怎么判断对象需要回收,垃圾回收机制
11.堆空间怎么分的
12.equals ==
13.lock sychronized区别
14.ConcurrentHashMap
15.CountDownLatch
16.双向链表 优点
三面:
1.数据库锁按照锁的粒度分为哪几种?用过哪种?为什么会出现死锁?
2.怎么不用经过很多层直接接收前端传阿里的东西;A用户登录,怎么保证他不读到B用户的信息?(拦截器,threadlocal类)
3.jvm内存分区?常量在哪?变量在哪?堆怎么划分的?
4.怎么判断需要垃圾回收?GC Root?
5.常见的垃圾回收期
6.索引实现?什么时候用索引?
7.InnoDB索引用的什么数据结构?B+树是怎么存储数据的?
8.主从复制,为什么要用主从复制?一个数据库同时读和写不行吗?磁盘角度分析?(硬盘、寻址、随机读写...)
9.了解IO吗?BIO、AIO
10.进程和线程
11.springboot怎么启动的?遇到过什么问题吗?是放到tomcat吗?启动的时候加载的信息是什么东西?
12.进程通信的几种方式
13.socket通信怎么建立的
14.outofmemory遇到过没,设置jvm参数吗?
15.Mysql:怎么找出表中重复的数字
16.项目中用的哪种垃圾回收机制?
17.了解Hadoop吗?
18.项目中用的垃圾回收机制。设置JVM参数
这一面的面试官真的非常nice,聊了差不多100分钟的样子,虽然我很多不会,但是他细心跟我讲解,并且给我提了很多意见,非常nice,面试中遇到的所有面试官里面最喜欢的感恩!
交叉面:
交叉面之前我根本不知道这是交叉面,当时就随便内推的,内推人我根本不认识,吸取的教训就是:不要瞎内推,不要瞎选部门,一定要了解清楚再内推,最好找认识的/靠谱的人内推!!!
问了我很多大数据的,不太会,全程被怼,痛苦的记忆,全程被凌驾,贴一下我还能记得的面经
1.介绍下某项目
2.我们部门是做什么的
3.分布式集群了解吗
4.热数据
5.给个场景,三亿用户,20台服务器,怎么控制分配??
6.流计算
三、远景智能(offer)
感谢远景爸爸,给了我人生的第一个offer,虽然很多大佬都没报这个,但本小菜鸡还是很感动,拿到offer以后心态真的会好很多,感恩!
1.算法:两数之和
2.Java垃圾回收,需要程序员自己回收吗?
3.jvm内存分区,gc发生在哪?
4.数组长度不确定,能在栈上分配内存吗?
5.归并排序的时间复杂度?
6.一个线程的生命周期
7.阻塞和sleep的区别??
四、携程(offer)
1.数模?做的啥?忘了。。。
2.垃圾回收机制
3.多线程安全(锁机制、)
4.线程间通信和进程间通信,管道法用的时候什么管道
5.分布式缓存
6.oracle--mysql数据库迁移,不停止业务的前提下怎么迁移(双写??缓存一致性??)
7.设计乒乓球比赛,有哪些类??怎么设计
那天面完携程很开心,面试官夸我还不错哈哈,对菜鸡来说算是很大的鼓励~
五、华为(offer)
华为一共两面,好像忘记记录面经了。。。一面问了一些技术,主要是项目,面试官又夸我了嘻嘻。二面纯聊天,面试官直接告诉我过了。
六、拼多多(二面挂)
一面:
拼多多的一面很迷。。。对着我的项目问了四十分钟硬件,头很大,我都说了硬件不是我做的了,一共面了差不都一个半小时。。看来是个嵌入式小哥哥,对硬件充满兴趣还提出了硬件的改进意见,不过最后还是给我过了
1.介绍项目,NB-IOT,NB-IOT是啥,为啥要用NB-IOT
2.硬件发上来的数据有哪些,怎么通信的,对收到的数据要做一些什么处理
3.通信质量是干嘛的,通信质量是指什么和什么之间的通信质量?电量是干嘛的
4.如果更换端口号,是不是要重新烧硬件程序
5.有哪些二叉树?搜索二叉树、平衡二叉树、红黑树,举个例子,什么时候用过
6.平衡二叉树和普通二叉树有什么区别,为什么要用平衡二叉树
7.怎么想到要用redis缓存数据的
8.通信就是用的socket吗?
9.编程:跳台阶
拼多多一面二面隔得有点久,一面完以后我基本没学习了,所以很多都忘了,有点遗憾,如果自己不松懈应该是可以拿下的,二面表现得不太好
二面:
1.计算机网络,每层的协议
2.TLS
3.Java中线程安全的类
4.死锁,死锁避免,预防
5.MySQL和Redis区别,原理
6.各种hash区别,底层怎么实现的
7.常用的数据结构
8.Linux
9.进程和线程的区别
10.集合Java里怎么实现的
七、美团
一面:
1.Ioc,举例说明好处
2.项目设计思路
3.Mybatis优点
4.spring中用到的设计模式
5.七层协议
6.sql找出每个班级成绩排名第二的学生
7.sychronized锁住方法和锁住代码块的区别,什么时候会出现死锁
8.垃圾回收机制
9.topK问题
其实今天刚面完二面,感觉面得不咋样,玩了两个星期,忘得差不多了。面不上就面不上,佛了佛了,随缘随缘
二面:
1.项目,硬件发上来的数据是什么类型,如何处理,怎么转化?
2.为什么要用springboot+mybatis
3.为什么要用spring,不用spring的话要怎么办
4.什么是AOP,举个例子
5.什么是动态代理
6.GC,新生代为什么要采用复制算法
7.G1
8.数据库查询慢怎么办
9.索引为什么快,底层是怎么实现的
10.最近在看什么书
总的来说面试还是比较痛苦的,深深地懂得了菜是原罪。希望大家都能找到好实习好工作~新的一天也要元气 满满哦!!