社招
第一面
流程
- 疫情原因,全流程是在线上面试,面试地址是牛客网。
- 每一面都有算法题,难度在中等级别,少有hard。需要调试通过,请提前在牛客网刷上几题,熟悉网页编程工具
- 每一面的流程相似,先自我介绍,再问基础技术,再讲项目,再写题
- 一面重基础,挑一个重点项目回答,约细节越好
- 二面注重项目和中间件,以及探讨解决某些具体问题的方法。注意不太需要回答项目的细节,除非追问
- 三面基本没有基础,项目也偏少,中间件和解决问题偏多。
- 做题很重要,题不过大概率没戏。算法题的考法范围是确定的,加我微信咨询(私信我,你的微信号)
第一面
时长
总计1小时
详细内容
- 自我介绍,3-5分钟,最好引入到项目中。
- 先详细的介绍项目,会问的比较细。
- nio与bio
- 执行一个main方法,jvm什么情况下会关闭
- 线程池参数的含义,execute方法的内部逻辑,shutdown方法做了哪些事情
- cms和g1的比较,怎么选择使用场景
- mysql事务的四个特性,分别是怎么实现的。
- mysql事务的不同隔离级别会有什么问题,又解决了什么问题。
- mysql的MVCC是用来解决什么问题的,读已提交和可重复读两个隔离级别下分别有啥不同
- mysql主从同步的流程
- kafka在什么时候会丢失消息,怎么才能保证不丢失。消息的幂等是怎么处理的
- juc的锁和synchronized的区别,怎么选择用哪个锁
- 锁膨胀介绍一下
- 写题
第二面
流程
先自我介绍,再讲技术点,再写题
时长
总计一小时
内容
- kafka的消息的物理存储结构
- kafka多副本是怎么同步的
- redis的zset的实现原理
- mysql为什么使用b+树
- 介绍一下什么是DDD,什么是CQRS(这是因为我项目里写了)
- 设计一个分布式锁
- 有五个任务,需要同时执行,如果超过500ms,那么五个任务的结果都不要了。代码要怎么写
- 本地缓存怎么淘汰
- 一个10t的文件,每一行都是一个字符串。求字符串出现频率最高的前十个字符串。需要在4g内存的机器中解决这个问题。讲思路
- 写题
第三面
流程
先自我介绍,再写题,再优化题解,技术点聊一聊
时长
总计半小时
大致流程
- 写题
- 优化题解(如果最开始不是最优解)
- 设计一个微信抢红包的算法。比如一个人发了200块钱,10人可领。怎么保证所以人领的红包和等于200块钱,大家领的钱悬殊不能太大。
- 限流算法有哪些,适用于哪些场景
- jvm锁升级的过程
- 你是怎么学习的
- 项目的进度很慢,你有啥解决办法
全部评论
(4) 回帖