当前位置: 首页 > 面试经验 >

字节飞书后端日常实习面经

优质
小牛编辑
94浏览
2023-03-28

字节飞书后端日常实习面经

首先自我介绍下:哈工大深圳24届计算机专业学生。


进度:


2022.10.3投递 -> 2022.10.14 14:00 一面 -> 2022.10.19 15:00 二面 -> 2022.10.21 14:00 转岗,一面 -> 2022.10.25 19:00 二面 -> 2022.10.27 11:00 三面 -> 2022.10.28 hr面


一面(100min)


上来首先直接手撕算法,说代替笔试:




  • 10亿个数据中筛选出最大的100个(小顶堆)




  • 判断字符串x2是否包含x1(包含指x2的一个子串内容和长度和x1一样,但是顺序可变)




第一题开始思路错了,面试官提醒后完成了,第二题开始题目看错了,面试官提醒后改过来了(第一次面试有点紧张,)


接下来是八股:




  • tcp time_wait状态讲讲




  • 如果一个服务器出现很多time_wait状态可能是什么情况




  • tcp如何实现可靠传输




  • 线程同步的方式




  • 堆排序稳定吗(这个忘记了,现推说不稳定)




  • cpp都有malloc了,为啥还要有new




  • cpp构造函数可以是虚函数吗(不知道,现推说不可以)




  • 怎么实现智能搜索,例如输入ha,弹出哈工大,输入s,弹出深圳(我说哈希表,这题没有底)




  • 如何检测垃圾文本,例如“啊啊啊啊啊啊,屁股屁股,没有没有”,就是很多重复的字词,没有意义(不太会,就说了查重,面试官也没有给我垃圾文本准确定义)




除了最后两题没有底,其他感觉都还好,面试官最后说这两题有很多实现方式,答案很主观


晚上6点多接到二面通知


二面(70min)


首先自我介绍,我就介绍我学习国外计算机网课和自己os竞赛的经历


接下来问一些开放性问题:



  • 写了这么多项目,讲一个最有挑战性的(我说了下有很多,讲下最近的824的raft实现)


接下来是八股:




  • tcp和udp区别




  • 如何基于udp实现可靠传输(刚好144是基于udp的用户态tcp协议栈,我详细的讲了下实现细节)




  • 进程线程、协程区别(我很详细的说了,从os的底层实现到go的gmp模型)




问了30分钟,最后手撕算法



  • 写一个解析csv文件的类(写了40分钟,面试官说超时了。主要是我java好几个api忘了,一般我都是查文档,可是面试不能查,只能一个个试了)


这里提一句,反问的时候,自己嘴贱了句,说对你们这个文本搜索岗位不是很感兴趣,结果面试完,直接给我转岗重新一面了,我其实完全不是这个意思,说完也马上改口了


面完第二天早上还没有通知,我看面试流程显示转岗了。又要重新一面


转岗后一面(60min)


上来首先自我介绍(和上面一样),然后写算法



  • 最大子序和


然后开始八股:




  • 进程和线程的区别




  • 什么时候会从用户态陷入内核态,具体细节




  • io密集型和计算密集型分别适合多线程还是多进程(和上面的两个问题层层递进,好,这里给了点提示)




  • 进程通信方式(我很详细的讲,最后讲到套接字的时候可能讲的太久了,面试官说不用说了,我们问其他的)




  • tcp为什么要三次握手(这里说我没有说出关键点)




  • tcp time_wait要等多久,为什么(有一个点没有说,面试官稍微提示后说出来了,这一点记得,但是一时脑抽忘了说)




  • 线性一致性是什么




  • 除了raft你还了解哪些分布式协议,paxos知道吗(听过,没有了解,我说raft就是为优化paxos而生)




晚上7点告诉我过了


二面(60min)


首先自我介绍(和上面一样)


算法题:



  • 从长度为n的数组里找出最大的k个数(和一开始的一面那题很像,但是这个我是用快排)


然后问我说,看你os是用rust写的,然后技能树说自己擅长go,讲讲go和rust异同(内存管理,主要讲这个)


八股:




  • 浏览器输入网址发生什么(从dhcp,到dns解析,到http,到tcp,到arp,到nat、到局域网,因特网,我很详细地说了)




  • tcp udp区别




  • time_wait和close_wait细讲下(tcp11状态机在写144时就滚瓜烂熟了)




  • epoll poll select讲讲(从底层linux源码机制到对比我都详细讲了)




  • 红黑树会吗(刚刚epoll提到红黑树,我说完全不会,这个题目应该所有面试里是唯一一个完全不知道说的)




晚上面的,所以第二天9点多告诉我过了


三面


自我介绍(和上面一样)


开始问项目




  • 介绍你的15445(从内存缓冲池、到extendible hashtable索引、到火山模型、到事务控制,面试官问了下哈希索引的并发控制,也细细地讲了下)




  • 问我824是自学吗?go也是自学吗?




最后写智力题



  • 变色龙问题,三种颜色变色龙,两只颜色不一样的遇到一起会变成另一种颜色,输入三种变色龙的数量,判断最终能否都是一个颜色(想了一分钟,写了思路给面试官看)


反问的时候,面试官说我对计算机底层探究很细,但是也要注意mysql、redis、linux的使用,我说这些都多多少少会,并且现在也在学哈哈


面完后马上半小时,吃午饭的时候告诉过了,约hr面


hr面(50min)


聊天似的面试,很轻松




  • 自我介绍




  • os竞赛讲讲




  • 还有什么团队协作经历




  • 以后待在深圳发展吗,家哪里的




  • 读研吗以后




  • 如果发offer,什么时候到岗,能工作多久,一周能5天吗




  • 哈深计算机是第一志愿吗




  • 高考目标是哈深吗




  • 自我评价下




  • 之前三次面试自我感觉怎么样,还有没有可以做的更好的细节




  • 为什么选择字节




  • 为啥给你转岗了




面了50分钟,反问:




  • 之前的三次面评可以透露吗(hr笑了笑说不方便透露,但是三位面试官都认为你计算机基础很扎实,可能业务经历方面稍加欠缺,但是在可接收范围内,入职可以学。我寻思我就是业务经历的少才来实习啊啊)




  • 结果大概什么时候出呢(hr说3到5个工作日,今天周五,所以应该下周五前告诉我结果)




期待顺顺利利发offer给我,我很需要实习


------------------------------------------分割线--------------------------------------


11.2 上午hr打电话发offer了,艹真他妈爽!!!!!!!!!!!!!!!!!!!!!哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈

#如何判断面试是否凉了#
 类似资料: