面试复盘 | 美团到店餐饮SaaS面经1、2、3面复盘
9.11 笔试 -> 9.13 约面 -> 9.16 技术一面 -> 9.18 二面 -> 9.24 三面
一面 2021/9/16 (67min)
- 面试官自我介绍(好评)
- 自我介绍
- 项目相关(这里问的比较细,包括了一些数据库的优化等)
- 数据库三大范式及举例
- mysql索引有几种类型(分类角度不同:聚集索引 | 非聚集索引、主键索引 | 唯一索引 | 普通索引、B+树索引 | 哈希索引 | 全文索引)
- 给了一个具体的非聚集索引的例子,问select * from table where b = 1 and a = 2这个sql语句怎么运行的(走联合索引,优化器,是否会回表,索引覆盖等)
- 聚集索引的特点
- 幻读是在哪一个隔离级别会发生,什么隔离级别会修复
- 面试官:我看你简历写了好多Java的内容,Java的容器有哪几种啊
- HashMap的数据结构(面试官:你这一听就看过源码啊,然后就开始哈哈的笑,比我笑的还开心)
- 说几个常用的linux命令吧
- 比如你现在登录了一个服务器,想去查询日志,用什么命令看
- redis集群(主从模式 | 哨兵模式 | Cluster,这里也说的比较细,提到了局部领头哨兵、领头哨兵、一致性哈希等,主要参考《Redis设计与实现》)
- 你还想聊点儿啥,答:看过《深入理解Java虚拟机》,要不聊聊JVM
- 说一下GC吧,young gc | full gc 什么情况下会发生
- 我看你一年写博客上写过题解,考你个类似的算法题吧:最大上升子序列和(不是最长上升子序列,题目说明了最长上升子序列未必和最大)
- 反问
这次面试是我面试过的最最舒服的一场,真的有种跟面试官技术交流的感觉,面试官经常哈哈笑,正反馈特别多,人看着也贼开朗,整个过程舒适度拉满,不得不说面试官真的会影响应聘者对公司的印象,听了多少遍开水团香水团都不如这一场面试给我的改观大,如果能有这样的导师或者同事也太棒了。
二面 2021/9/18 大概60min记不清了
- 面试官自我介绍(有一说一,美团的面试官上来都做了自我介绍,就很有好感)
- 自我介绍
- 项目相关(问的比较细,包括了优化以及原因,也延伸问了一些数据库的内容,比如为什么真实开发中为什么尽量少用外键,项目总结出来常用的数据类型,int和varchar声明的时候长度的含义等)
- 数据库的分库分表
- 进程和线程的区别
- 一个应用里起的最大线程数会收哪些限制,如果想提高线程数,怎么调参
- 一直new线程会报什么错
- 能用sql模拟一个死锁吗,可以推导一下,数据库有哪些锁(他说在应用程序上我们是两个线程,去锁两个资源,对应到数据库呢,能看得出面试官在努力引导,但是我说了一堆行锁表锁意向锁,面试官说我可能想复杂了)
- 项目开发中一般怎么去避免死锁
- SpringMVC中的Contoller是线程安全的吗,什么样的实例是线程安全的(显然这个问题我没理解)
- 线程池的参数,每个参数在它的生命周期里起到什么作用
- Spring的事务传播行为,是解决什么问题的
- Spring框架用到了哪些设计模式,具体举例(工厂模式 | 单例模式 | 适配器模式 | 代理模式 | 观察者模式 | 策略模式 | 模板方法等)
- Java的异常体系
- 双亲委派模型
- Servlet的生命周期(不咋会)
- redis为什么会这么快
- BIO、NIO、AIO
- redis缓存雪崩、缓存击穿
- mysql联合索引(优化器 | 最左匹配原则 | in走不走索引)
- explain执行计划关注那些列
- 设计题:发优惠券有一个明文的券码,怎么生成,要求分批生成且不重复,不能用穷举猜得出来(参考RSA加密思想,开放题)
- 算法题:lc #92 反转链表II,反转[m,n]范围内的节点
- 反问
不得不说美团的面试体验真的好,面试官会耐心的引导,感觉不是拉个人就面试,像是专门对面试官培训过的,面试过程中基本不会因为某个题不会而慌了,面试官都会温和的一点点引导,一般都能引导的出来。
三面 2021/9/24 50min
看起来是技术大佬
看起来是在家啊,在北京是住亲戚家吗,blabla
- 来做个题吧:lc #200 岛屿数量(bfs | dfs | 并查集,我用的bfs)讨论了一下对于二维数组,什么是bfs什么是dfs
- 什么时候开始准备的
- 项目相关
- 项目引出了版本控制,有没有考虑过用一套系统去支撑各个业务方的,你现想一下可能吗,假设就是部署在同一个服务器上
- 你对美团的印象
- 反问
怪不得前面的面试官那么爱笑(还笑的挺豪放),原来leader也爱笑,团队氛围搁我这儿已经满分了,从来没在牛客许愿过,这回许愿一个hr面和offer,实在喜欢这几个面试官