时间安排:
6月26日投递飞书后端提前批,参加笔试后7月10 日参加1面2面,当天约三面,7月14日参加三面,第二天流程终止,飞书挂(觉得就不想要人)。
7月30日被产品研发捞起来从二面开始面试,30日面试官临时有会,又推到3号,3号复捞二面后当天约三面,8月6日三面完成两天后hr打电话通知面试通过,需要定岗协商和offer审批要等待两周。
8月24日通知offer审批完成,1-2天发意向书。
历时两个月。。。
面经:
一面: 7月10日 40分钟左右,面试完就记录然而还有很多问题忘记了
1. 你的项目怎么获取静态文件的? 发大文件怎么办?
2. 你用的什么模型? 介绍一下epoll poll 和select
3. 进程的通信?
4. 项目有用多线程吗,多线程用来干什么?
5. 线程的同步
6. 进程的切换
7. 进程的优先级?怎么查优先级?
8. 用过linux free命令吗? 怎么查看内存?
9. 介绍一下虚拟地址怎么转换成物理地址
10. 编程题:字符串相关
面试完成后,面试官问我是什么专业的,不是计算机专业的吧,那操作系统和计算机网络都是你自学的吗?感觉你这方面基础挺好的。 答:是自学的,毕竟要找工作。(表面平静,内心狂喜)
二面: 7月10日 40分钟左右
1. 由于非科班,面试官问我对哪些方面比较了解? 答:计算机网络 操作系统 数据结构
2. 面试官:那问一下数据库。解释索引,解释索引结构,B+树和B树的区别。 我:???
3. 看数据库语句,说索引,主要是复合索引
4. 怎么压缩数字。 比如一个整型int值 占四个字节 ,怎么进行压缩变成少于四个字节。
5. 联合索引在b+树里怎么存的。
6. 缓存了解吗,redis知道吗? 答:不会
7. 虚函数实现
8. 编程:树的左视图
反问:关于mysql数据库和redis不太了解影响大吗? 面试官说影响不大
三面:7月14日 噩梦般的一次面试
具体问题我已经记不清,也根本不想去回忆。。。
面试官没有问任何基础问题,所有问题都是围绕项目展开,聊到哪里就问到哪里。 菜鸡的我根本听不懂面试官想问什么,这是最可怕的,如果知道对方问的是什么,那我不会就是不会。。回头可以去补这方面的知识。但是我不知道面试官想问什么。感觉没有一个问题回答刀面试官想要的点上。
最后写了一道编程题,leetcode 53 最大子序和 easy题 , 然而并没有这么简单,这只是开始,问:如何用多线程实现。到现在我也不会。
面试结束,面试官表示他的面试风格就是这样,很少有人能完全回答上他的问题。。 (吐了,受到暴击)
第二天流程终止但是一直没有收到感谢信。在牛客上看到字节其他部门可以捞人,于是找了一个hr帮忙捞一下,被告知飞书还没释放简历。 这里要说一下,大家如果挂了的话一定要让挂的那个部门hr释放简历,不然其他部门看不到你的简历,没法捞你。 让飞书hr释放了简历后立马有hr给我打电话要捞我面试。并被告知参考之前面试官的评价,这次面试从二面开始。
复捞二面: 1h
依然全程没有问基础问题,问了一个小时的开放题和场景题。 和飞书三面的不同是可以知道面试官想问什么。
最后说给我出一道简单的算法题, 判断一个树是不是搜索树。
复捞三面:50mins
看起来是个大佬
开始问了下为什么 非科班来面试这个岗位,平常怎么学习的等等
然后问了一些C++语言方面的问题
最后做了多线程相关的算法题, 三个线程实现按顺序打印数字
总结
字节的面试效率是很高的,基本上面完当天就可以约下一面。而且面试官会看之前的面试评价来确定这次面试的考察重点。一面主要考察操作系统和计算机网络。二面考察数据库和一些开放智力题。三面考察项目以及扩展。四面场景题。五面语言方面的知识。 建议大家做好准备再投递。
全部评论
(2) 回帖