12月中旬群里有学长问要不要内推头条,想着试一试看看自己什么水平就投了。
12月26号简历评估通过,一直到1月2号打电话约面试,当时已经拿了另一家二线大厂的offer,就想跟学长说还是下次再投头条了,哪知道太巧了刚说完hr就给我打电话了,想着试试就约了面试。
过了两天一面电话面,问的有Java基础、多线程和一些比较简单的数据结构
1. 线程和进程的区别(真的必考)
2. ThreadLocal
3. 四种引用类型
4. volatile的作用和原理
5. juc里的锁
6. atomic包里的一些问题
7. 二叉树的先序遍历,层序遍历的实现
8. 用栈实现队列
9. 包括max函数的栈
一面问的比较简单,我答得还凑合,很快就约二面了,当时hr听说我要期末考试,要给我延后面试,感觉人非常nice 1月14号下午约的视频面,面了三轮技术面
第一轮(有一些不太记得了):
1.简述TCP的三次握手,为什么要三次握手?
2.TCP的拥塞控制
3.redis分片,客户端的请求怎么处理
4.HTTP的一些问题
5.HashMap的扩容
6.SpringBoot的注解
7.Semaphore信号量用来做什么的
8.有没有用过一些消息中间件
9.手写代码,滑动窗口的最大值
第二轮:
1.浏览器输入url请求服务器的过程,分析其中哪些部分用到缓存
2.讲一下CDN
3.cookie用来做什么的
4.操作系统的内存管理
5.分页式的页表放在哪
6.进程的PCB里还有哪些东西
7.linux脚本,杀掉包含一个关键字的所有进程
8.linux I/O模型,说说select和epoll的区别
9.HTTP的过程
10.HTTP的一些细节
11.HTTPS怎么建立请求
12.redis的一些问题,我说我理解的不深就没问深了
13.mysql的索引,最左匹配原则
14.mysql的主从
15.B+树和B树的区别
16.简述红黑树
17.对分布式的一些理解
18.手写代码,找一个n*n矩阵中的最长上升序列
第三轮(应该是部门leader):
1.又问了浏览器输入url请求服务器的过程
2.SpringBoot的一些问题
3.Mybatis里的动态代理
4.主要问项目的一些问题
5.智力题:岛上每个人都带着帽子,颜色为红色或白色,不能相互问,当知道自己帽子的颜色时就可以离开。
某天一个外来人来了,说了句:“红色的帽子至少有一顶。”,问之后岛上人们的离开情况
6.问了一下平常除了上课都怎么学习的
7.有什么要问他的,问了下部门的业务(抖音相关)
一下午面完,过了一个小时hr就联系我说跟面试官沟通一下,然后过了一会就打电话来谈offer了,虽然已经拿了一个大厂,但是过了宇宙条还是很兴奋的。
总结:
头条看重基础(大厂都看重),问我的算法题都不难,刚考完期末太浪了所以状态不太好,手写代码虽然思路对但是都有小问题。
面试给面试官呈现的态度非常重要,有些比较难的问题可能一时想不出来,但是一定要思考不能因为不会就逃避,可以一步一步和面试官交流,思路对也不错。
本来想着先去二线大厂好好学习,秋招再冲一下BAT头条,没想到秋招的目标在春招之前就实现了,属实运气好。
网友评论