2.20一面->2.21二面->3.3三面->3.6hr面->3.7口头oc->3.10书面offer两年来第一次面字节,个人感觉字节的面试会更加偏向业务一点,八股相对较少,而且面试官会主动引导你说出正确答案,体验非常不错。二面的手撕较难,差点翻车了,一度以为是面试官给我的思路有问题,结束后复盘才知道我是小丑,算是有惊无险。字节的流程还是很快的,这点满分。一面raft的原理raft怎么维持强一致性raft的读写,只能对主节点读吗?那其他节点是做什么的呢?cpp和go的区别,为什么cpp会比go快呢?智能指针有哪些?智能指针的实现(大概扯了一下RAII)子协程panic的话,父协程会怎么样?兄弟协程会怎么样?recovery怎么恢复panic情况?你用过吗?channel关闭后读写会怎么样?操作系统的内存分配了解吗?cpp和go里面创建对象在内存什么区域,堆还是栈,如果说是cpp的static变量呢,在什么区域?手撕:删除K个字符最小字典序,不包含前导0业务题一个流式分布式系统,每时每刻有很多请求,每个请求携带一个重要性分数,估算中位数,请设计一套方案。二面流数据库是什么?你能给我介绍一下吗?云又是什么?(拷打实习)了解搜索引擎吗?你觉得它们怎么提高搜索的速度呢?聊聊你实习中觉得最难的一个点?最后怎么解决cpp里什么情况下vector的迭代器失效呢?如果有一个热点数据我们无法承载它的流量,你有什么方法解决呢,不中断用户的体验。我现在有一些热点数据需要缓存,你能实时判断哪些是热点数据吗,能给我一些方案吗?什么数据结构有效呢?手撕:LC295带删除三面(交叉面)聊实习,描述一下你觉得最难的点是什么?你实习时的游戏后台的QPS多少?除了lru之外还有什么淘汰策略呢?讲讲lru和lfu的区别,在什么场景下用lfu更好?讲讲redis分片和副本的区别设计一个高并发下分布式的缓存系统思考题一副牌52张,里面有10张牌是正面朝上的,要求把这52张牌分成两堆,并且每堆牌正面朝上的张数相同。手撕:1. 链表大数相加,O1空间2. 接雨水3. 96. 不同的二叉搜索树hr面在校经历实习经历,最大的挑战是什么base地,什么时候入职许愿oc 呜呜呜T_T3.10更新已发书面offer