深信服java一二三hr面经
一面:9.11
面试官是个小姐姐😁
1.自我介绍
2.项目(烂大街的博客)
3.读过spring源码吗?(当初看spring的类名字过于长,放弃了)😔
4. springboot的特性?我谈自动装配,然后问我如何实现?并让我举个例子😔例子真举不出来,然后问自动装配需要什么?我说starter
5.聊一聊spring的ioc和aop,有些语无伦次
6.谈谈b+树,我说了下它的非叶子节点数组和叶子结点链表,还说了它主要用于磁盘,但面试官说我主要是从数据库的角度谈的,让我说说它的结构😂(我傻了,插科打诨混了过去)
7.然后一道多线程交替打印list的内容。我是用synchronized加锁,一开始两个线程只交替打印了两数,遂在外层加上循环,然后越界了...面试官提示了下也没找到,事后发现一个线程被唤醒后没有判断越界,直接打印了。
8.反问。问了下哪里要加强,说应该深入了解下spring底层(让我看些源码)😂
二面:9.13
1.自我介绍
2.容器有哪些
3. hashtable和hashmap区别
4.栈在项目中有用过吗?(答曰没有,只是写算法题会用,又让我举例子😂)
5.满二叉树,完全二叉树是什么
6.哈夫曼树是什么(忘了😭)
7.写一写单例。先写了个饿汉,然后让我写个懒汉,就写了个double-check,然后问我为什么要第二个if,楞了1分多钟,答曰还没创建时,两个线程进入第一个if,然后其中一个进入第二个if;然后问去掉第二个if会如何,楞了两分钟(这里太久没看了)
😂,自己想了想是避免重复创建吧。
8. synchronized的原理
9.double-check中volatile的作用
10.写一个栈溢出错误(递归)
11.写一个将10进制数转为其他进制的函数(除和求余结合。我循环判断出了点问题,de了三四分钟bug)
12.如何统计全国程序员的数量(我傻了,中途结结巴巴了有10分钟,想问面试官要点提示,说是开放题,自己想吧)我就想着统计csdn ip和发问卷统计职业了,甚至是国家发布的统计资料😂。
13.让我给高中生讲讲微积分。(我说我忘了,哈哈哈哈哈,高数太菜了)
14.看过哪些书
15.反问。我问为啥问程序员,微积分这种奇怪的题目,说是看我们的思维能力
——————————————————
2021.9.29编辑
线下两面,去的深圳
hr面:9.28
1.自我介绍(会根据介绍延伸,问问学校生活之类的)
2.学校期间比较有成就感的事(类似的)
3.性格方面,内向外向,比较讨厌什么类型的人
4.优缺点之类
5.为什么会选择深信服,相对其他公司的优势
6.怎么看待加班
7.手上有其他公司的offer吗
8.薪资
还有些问题忘了,都算是常规问题,聊了二三十分钟吧,我比较放松,气氛聊得比较愉悦吧。
三面:9.28(在hr面后1个多小时)
一个中等大小的会议室,一位胖胖高高的面试官,比较冷漠严肃吧,近距离面试确实很有压迫感,最后确实也答得不咋样。
(看了看我的简历,我的简历确实烂,因为确实能写的少)
1.一直搞java吗?其他编程语言咋样?(是的,其他不会)
2.项目是自己练手的吗?实习有无?(我的项目确实是练手,而且数量少,于是全程就没问了;没有实习经验就更难受了)
3.是否有jvm调优经验?(我扯了扯简单的参数设置,毕竟是练手的项目也没用上调优)
4.java gc是手动调用后就会立即开始收集的吗?
5.是否有阅读过源码(一年半前看过shiro的,一年前看过spring的,但由于过于久远,回忆不起来就被叫停了)
6.看我简历里有redis,问redis为什么适合作为缓存中间件?redis使用的是单线程还是多线程?redis如何实现多核?是否读过redis源码?(……我只能说不懂c,没读过)
7.线程安全的java类或方法?(我扯了些容器)然后让我解释ConcurrentHashmap怎么实现线程安全的。
8.java如果要读取大型文件,如何利用缓冲?(好像是这样问的)我就提了BufferedInputStream,然后问我它底层怎么实现的?(……这个不会呀)然后问我为什么有缓冲更好?我答是减少I/O次数。(面试官不太满意,不知道咋答)
9.一个有序数组插入数据的时间复杂度?
10.数组按行遍历和按列遍历时间差别?(之前见过这题,忘了答案,搞崩心态……(按行更快,因为cpu缓存))
11.会用什么数据库?(mysql)mysql的索引是b+树还是b树?它们的区别?为什么用b+树?
12.然后看我项目用了nginx,问了怎么用的?问我nginx反向代理和正向代理区别?我答一个是服务器内部,一个是外部。(面试官不太满意)
13. java文件如何转换为字节码?字节码又如何被执行的?(我扯了扯记得的字节码的内容格式,面试官不太满意)
14.如何防止类不被继承?final为什么可以阻止类被继承?(我从字节码的final标识被jvm检测到的方面谈的)
15. leetcode 40.组合总和Ⅱ 类似的,然后求数量。
给定一个数组
16.问哪个课程学得好?
反问:多久出结果,答这两天,hr会联系。
感受:前两面比较轻松简单,面试官也愿意听我的垃圾项目。然后三面难度陡增,问了挺多非常规的问题吧,开头对我项目和实习的发问就让我没底了,加上算法题没撕出来😞,确实面完比较难受的。
2021.9.29发的offer,算是秋招的第一个也是最后一个offer吧。讲真我简历很烂,没比赛,没奖学金,排名靠后,没项目,没实习,学历平庸,算是‘五无’人员吧。从春招找实习开始,收获了十几次面试凉经后,又头铁莽秋招。从7,8月开始海投,到现在只有5,6次的面试机会,大多都是一面凉,还是很感谢深信服给的这次机会吧。也注意大家秋招顺利吧。😘#深信服校招##深信服##Java#
面试官是个小姐姐😁
1.自我介绍
2.项目(烂大街的博客)
3.读过spring源码吗?(当初看spring的类名字过于长,放弃了)😔
4. springboot的特性?我谈自动装配,然后问我如何实现?并让我举个例子😔例子真举不出来,然后问自动装配需要什么?我说starter
5.聊一聊spring的ioc和aop,有些语无伦次
6.谈谈b+树,我说了下它的非叶子节点数组和叶子结点链表,还说了它主要用于磁盘,但面试官说我主要是从数据库的角度谈的,让我说说它的结构😂(我傻了,插科打诨混了过去)
7.然后一道多线程交替打印list的内容。我是用synchronized加锁,一开始两个线程只交替打印了两数,遂在外层加上循环,然后越界了...面试官提示了下也没找到,事后发现一个线程被唤醒后没有判断越界,直接打印了。
8.反问。问了下哪里要加强,说应该深入了解下spring底层(让我看些源码)😂
二面:9.13
1.自我介绍
2.容器有哪些
3. hashtable和hashmap区别
4.栈在项目中有用过吗?(答曰没有,只是写算法题会用,又让我举例子😂)
5.满二叉树,完全二叉树是什么
6.哈夫曼树是什么(忘了😭)
7.写一写单例。先写了个饿汉,然后让我写个懒汉,就写了个double-check,然后问我为什么要第二个if,楞了1分多钟,答曰还没创建时,两个线程进入第一个if,然后其中一个进入第二个if;然后问去掉第二个if会如何,楞了两分钟(这里太久没看了)
😂,自己想了想是避免重复创建吧。
8. synchronized的原理
9.double-check中volatile的作用
10.写一个栈溢出错误(递归)
11.写一个将10进制数转为其他进制的函数(除和求余结合。我循环判断出了点问题,de了三四分钟bug)
12.如何统计全国程序员的数量(我傻了,中途结结巴巴了有10分钟,想问面试官要点提示,说是开放题,自己想吧)我就想着统计csdn ip和发问卷统计职业了,甚至是国家发布的统计资料😂。
13.让我给高中生讲讲微积分。(我说我忘了,哈哈哈哈哈,高数太菜了)
14.看过哪些书
15.反问。我问为啥问程序员,微积分这种奇怪的题目,说是看我们的思维能力
——————————————————
2021.9.29编辑
线下两面,去的深圳
hr面:9.28
1.自我介绍(会根据介绍延伸,问问学校生活之类的)
2.学校期间比较有成就感的事(类似的)
3.性格方面,内向外向,比较讨厌什么类型的人
4.优缺点之类
5.为什么会选择深信服,相对其他公司的优势
6.怎么看待加班
7.手上有其他公司的offer吗
8.薪资
还有些问题忘了,都算是常规问题,聊了二三十分钟吧,我比较放松,气氛聊得比较愉悦吧。
三面:9.28(在hr面后1个多小时)
一个中等大小的会议室,一位胖胖高高的面试官,比较冷漠严肃吧,近距离面试确实很有压迫感,最后确实也答得不咋样。
(看了看我的简历,我的简历确实烂,因为确实能写的少)
1.一直搞java吗?其他编程语言咋样?(是的,其他不会)
2.项目是自己练手的吗?实习有无?(我的项目确实是练手,而且数量少,于是全程就没问了;没有实习经验就更难受了)
3.是否有jvm调优经验?(我扯了扯简单的参数设置,毕竟是练手的项目也没用上调优)
4.java gc是手动调用后就会立即开始收集的吗?
5.是否有阅读过源码(一年半前看过shiro的,一年前看过spring的,但由于过于久远,回忆不起来就被叫停了)
6.看我简历里有redis,问redis为什么适合作为缓存中间件?redis使用的是单线程还是多线程?redis如何实现多核?是否读过redis源码?(……我只能说不懂c,没读过)
7.线程安全的java类或方法?(我扯了些容器)然后让我解释ConcurrentHashmap怎么实现线程安全的。
8.java如果要读取大型文件,如何利用缓冲?(好像是这样问的)我就提了BufferedInputStream,然后问我它底层怎么实现的?(……这个不会呀)然后问我为什么有缓冲更好?我答是减少I/O次数。(面试官不太满意,不知道咋答)
9.一个有序数组插入数据的时间复杂度?
10.数组按行遍历和按列遍历时间差别?(之前见过这题,忘了答案,搞崩心态……(按行更快,因为cpu缓存))
11.会用什么数据库?(mysql)mysql的索引是b+树还是b树?它们的区别?为什么用b+树?
12.然后看我项目用了nginx,问了怎么用的?问我nginx反向代理和正向代理区别?我答一个是服务器内部,一个是外部。(面试官不太满意)
13. java文件如何转换为字节码?字节码又如何被执行的?(我扯了扯记得的字节码的内容格式,面试官不太满意)
14.如何防止类不被继承?final为什么可以阻止类被继承?(我从字节码的final标识被jvm检测到的方面谈的)
15. leetcode 40.组合总和Ⅱ 类似的,然后求数量。
给定一个数组
candidates
和一个目标数 target
,找出 candidates
中所有可以使数字和为 target
的组合。candidates
中的每个数字在每个组合中只能使用一次。
注意:解集不能包含重复的组合。
示例 1:
输入: candidates =(如果这是笔试题,我大概能写出来,但由于前面答得不咋滴,近距离感受压迫,然后是在纸上手写代码,我异常地慌,然后写了一部分,讲了下思路,思路不全,只考虑了选,没考虑不选,因为我当时就没看出是回溯……面试官不太满意)[10,1,2,7,6,1,5]
, target =8
, 输出: [ [1,1,6], [1,2,5], [1,7], [2,6] ]
16.问哪个课程学得好?
反问:多久出结果,答这两天,hr会联系。
感受:前两面比较轻松简单,面试官也愿意听我的垃圾项目。然后三面难度陡增,问了挺多非常规的问题吧,开头对我项目和实习的发问就让我没底了,加上算法题没撕出来😞,确实面完比较难受的。
2021.9.29发的offer,算是秋招的第一个也是最后一个offer吧。讲真我简历很烂,没比赛,没奖学金,排名靠后,没项目,没实习,学历平庸,算是‘五无’人员吧。从春招找实习开始,收获了十几次面试凉经后,又头铁莽秋招。从7,8月开始海投,到现在只有5,6次的面试机会,大多都是一面凉,还是很感谢深信服给的这次机会吧。也注意大家秋招顺利吧。😘#深信服校招##深信服##Java#