2 年经验大厂(网易、字节、B站、阿里...)面经分享
这是一位 20 届球友的社招面经,获得了滴滴、网易、字节、B站、携程等公司的 offer,最终选择了字节。
下面是正文。
北京滴滴(offer)
一面
- 自我介绍
- 介绍自己做的项目,难点有哪些,怎么处理的?
- 拆分读服务是微服务的什么思想?
- 拆新的服务和之前服务水平扩展 有什么不一样?
- 数据库层面有没有数据扩展?
- QPS 8W 总单量是多少 ?
- 本地缓存怎么保证数据一致性?
- MQ 如果挂了 怎么办?
- Redis 集群了解吗?
- 数据清洗怎么做的?
- 如何保证最终一致性?
- 顺序消息如何保证?
- ES 怎么用的?数据量级多少?为什么用ES 不用Hbase?
- Zookeeper 作为注册中心有什么问题?如果 海量服务同时重启会出现什么问题
- 算法:环形链表 II
二面
- 项目介绍
- 大促期间服务总QPS , 多少个服务,每个服务多少个线程
- 服务器线程数量根据什么来配置?
- Redis 集群的工作原理? gossip协议? 写和读的流程? CRC16 再取余 这个计算 在client 还是服务端?可以决定哪个key 放在哪个节点吗?
- Redis 主从同步流程?
- Redis 的 hash结构 怎么 rehash的?如果渐进式时,这些的key突然都不访问了 会有什么问题
- MySQL innodb 引擎的索引结构,B+树一般都多高? 层高怎么计算?
- 联合索引 abc where a = 3 and b > 3 and c= 3 怎么走索引?
- 如果MySQL 表中有一个字段很大有几K会有什么问题?
- 索引下推了解吗?
- 场景设计:如何设计一个会议室预定系统?
- 算法: 给数组arry 和值 x 计算 数组 array 中差值绝对值为X的数对;
三面(HRBP)
- 离职原因;
- 用三个词评价一下你的领导;
- 未来规划;
- 你有什么缺点;
- 遇到过最大的问题;
总结
一面整体上全是项目和场景考虑,因为他们是用go开发,我之前是用Java,所以一直在问中间件,没有Java八股文,不过中间件问的蛮深,面试体验很好;
杭州网易(offer)
一面
- 讲一下JUC 下的线程池,线程池参数以及提交任务后怎么执行
- Lock 的加锁和解锁过程和公平锁和非公平锁实现原理
- Conditional 源码有没有看过
- 阻塞队列 源码有没有看过
- JVM 调优讲一下?非常细 什么命令 怎么分析的 面板什么样子都有问
- CMS + ParNew 算法的对象分配和垃圾回收流程
- 什么时候会出发full gc
- old区什么时候触发CMS GC 什么参数 配置大了会怎么样 配置小了会怎么样
- 为什么会产生浮动垃圾
- MySQL 的隔离级别,MVCC 原理 ,乐观锁 在什么隔离级别才能使用?
- Kafka 的ISR是什么,HW呢?怎么保证可靠性, Kafka 怎么 实现顺序消息?为什么Kafka的broker上topic越多 效率越慢?
- 讲一下项目的完整流程 数据模型,多个版本经常变化怎么控制的?(每个校验模块提供原子能力 可以配置化,如何设计)
- 分布式事务 是怎么保证的, MQ的方式 如果本地执行成功同时服务挂掉了 这个MQ没有记录 怎么办?
二面
- Zookeeper工作原理讲一下,有没有看过源码;
- 讲一下你负责的业务的服务架构,以及你们部门的服务架构;
- 你觉得现在架构有什么不合理的地方?
- 有没有看过什么中间件的源码?
- 区块链了解吗?
总结
因为简历投错了部门,投到了区块链,所以问我很多源码,比较底层的东西,因为做区块链开发可能会难一点,所以会问有没有看过源码,整体面试体验很好;
Shopee(offer)
一面
- 项目问题( 聊了 30分钟);
- MySQL 主从同步原理;
- MySQL 索引优化;
- 线上问题定位 以及优化过程;
- Redis 集群 的工作原理,集群写入数据原理, 增删节点 如何数据同步?Redis的hash过程;
- Kafka 讲一下,offset存储原理;
- 算法: 1.栈实现队列 2.三数之和
二面
- 介绍一下自己的亮点;
- 讲一下做的项目;
- Kafka 讲一下;
- MySQL 的索引讲一下;
- Redis 的key过期 怎么删除的 ?主动删除 和被动删除;
- Redis 击穿 雪崩 穿透 和解决办法;
- MQ 同步信息怎么保证数据的一致性和实时性?
- JVM调优过程说一下;
- 算法:1.二叉树的前序,中序,后序遍历; 2.最长重复子数组
总结
参加的是周末专场面试,一个周末面完+出结果,整体是项目+中间件,算法每一面都是两道一个easy,一个mid,整体面试体验很不错;
B站(offer)
一面
- MySQL 行级锁,表级锁。意向锁 加锁时机是什么? 项目中有没有使用过意向锁?
- 如果查询语句有没有索引,SQL调优过程?
- Spring 事务注解原理,事务传播机制,使用过什么传播机制?
- RocketMq 消费者重平衡 会有什么问题?重复消费? 消费失败? 这些场景如何处理
- 数据一致性怎么保证? 分布式事务怎么实现?
- 动态代理有哪些,什么区别,使用注意方式;