字节跳动整个面试流程可以说是比较快了,反馈也很及时。面试下来感觉字节比较重视基本知识,操作系统、计算机网络都是必问的。
编程语言方面我比较擅长java,但两个面试官好像都不是写java的。
一面(1h)
自我介绍
介绍一下项目
项目中Redis数据不一致的问题怎么解决
Spring ioc
MySQL ACID 隔离等级 每个隔离等级存在的问题 索引优化 聚簇索引非聚簇索引的区别
kafka怎么用的
用户态核心态
volitile 原理,可见性怎么实现的,缓存是在哪个位置(内存还是cpu)
Java中有哪些锁
线程状态 进程与线程的区别 进程通过共享内存通信需要注意什么
算法题
1、leetcode 53. 最大子序和 (简单)
2、leetcode 139. 单词拆分 (中等)
二面(1h)
自我介绍
介绍一下项目
redis+kafka 和一面差不多
MySQL 隔离等级 串行化怎么实现的
内存划分(我讲了jvm的那一套,面试官好像不是很满意)
内存管理页式、段式、段页式
详细讲程序从加载到运行整个过程中的内存管理过程
time_wait 为什么 如果不设置会发生什么
算法题
1、O(1)实现堆的入栈出栈和max
2、leetcode 22. 括号生成(中等)