【面经】字节飞书 后端开发 ByteIntern
时间线:
- 25.3.4 流转到飞书
- 25.3.7 一面
- 25.3.14 二面
- 25.3.19 三面 当天挂,流转
3.7 字节飞书一面 50min
项目&八股&场景
被拷打麻了。。。好多漏洞点
- 实习做了什么?用的 MQ 是什么?
- RocketMQ 如何保证消息不丢失?
- 一个服务修改了数据库,之后要向 MQ 发送消息告诉消费者有相应业务变更,但是在发消息前这个服务挂了,对于这个问题要怎么处理?
- MySQL 跨表事务是如何实现的?
- MySQL 如何保证数据持久化?为什么 Redo Log 更好?
- Redis 数据结构?
- Redis 做自增 ID 时,做持久化了吗?如果 Redis 挂掉了怎么办?如果 key 被内存淘汰了怎么办?
算法
946 验证栈序列
反问
- 表现:多用组件多理解原理
- 业务?飞书 SaaS 平台
3.14 字节飞书二面 80min
实习 25min
如何实现 PaaS 平台的业务对象定制,数据库设计深挖,实现增删改查等
八股盛宴
你拷打我计算机基础原理?我忘一个给你看。
- 操作系统进程和线程什么区别?线程共享了什么资源?
- 操作系统虚拟内存?是如何存数据的?TLB 访问过程中上下文切换了是怎么做的?(对不起,全忘了)
- 键入网址到网页显示,期间发生了什么?
- 访问同一个ip,怎么负载均衡到集群进程?(??)
- MySQL 事务隔离级别?
- MySQL 索引结构?为什么要用 B+ 树?和 B 树的区别?
- MySQL (a, b, c) 联合索引,
WHERE a < ? AND b > ? AND c < ?
可以走哪些索引? - String、StringBuilder、StringBuffer 的区别?
- 有哪些保证线程安全的机制?
- 如何实现可重入锁?实现可重入锁的 count 要加什么关键字?
- volatile 是怎么实现可见性的?所用的 JMM 模型是怎么在原理上实现的?(可能让我回答内存屏障,当时忘了)
算法
(没查到原题)给一个链表,有特定性质:奇数位元素递增,偶数位元素递减。
如: 1 → 10 → 2 → 9 → 3 →0 需要将它排序,如排序成 0 → 1 → 2 → 3 → 9 → 10
一直撕撕撕到饭点,撕完我电脑也没电了,面试官也饿了,就这么结束了
3.19 字节飞书三面 35min
早上11点面试,9点看了个面经,结果问我的问题和问他的完全不一样,聊天实习八股全混着,无算法
项目
很关心我从开始到现在都在做什么,怎么学习的
- 实习为什么就两个月?实习公司是做什么的?PaaS 平台是做什么的?自己做的工作和平台什么关系?
- 实习 8 月之后做了什么项目?介绍下竞赛项目?为什么要参加竞赛项目?自己做的有亮点的工作?
- 11 月之后做了什么?近期是怎么学习的?一天学习几个小时?
- 简单八股:介绍下http2.0、协程的应用场景
反问
- 如何学习Golang?理解所有的原理机制
- 面试结果?这周or下周