社招美团技术3面面经

863 阅读2分钟

美团面经

一面

Java基础
  • 什么是泛型、泛型擦除了解过吗
  • Java语法糖知道吗,Java中还有哪些利用了语法糖
  • synchronized和reentranLock的区别
  • reentranLock底层实现,AQS实现
  • JVM内存模型
  • 各种垃圾回收器和垃圾回收算法,CMS和G1的区别
  • 构建一个线程池都有哪些参数,拒绝策略有哪些,线程池底层的执行流程是怎样的
  • 什么是ThreadLocal,底层是怎么实现的,使用它可能会出现什么问题,为什么出现这样的问题
  • 在foreach中删除数据会出现什么问题,出现的异常是什么,怎么能在循环中删除数据
redis
  • String、Hash、Zset底层都是什么结构
  • 为什么Zset底层使用的是跳跃表而不是红黑树
  • redis事务了解过吗,它跟普通的事务有什么区别
MySQL
  • 有哪些事务隔离级别
  • MVCC了解过吗,介绍下
  • MySQL的索引底层结构
  • B树和B+数的区别,为什么使用了B+数
网络知识
  • tcp在网络架构的哪一层
  • ip在哪一层
  • 网络层在整个网络架构中起到什么作用,为什么会有这一层
  • tcp怎么实现的流量控制
项目问题
  • 项目中遇到哪些问题
  • 解决问题的思路
  • 根据回答再问一些技术相关知识,不固定
算法
  • 链表中环的入口节点

二面

Java基础
  • JVM内存模型、JMM模型
  • 线程池每一个参数、拒绝策略、线程池中的执行流程
Dubbo
  • 读过哪些源码,讲解下dubbo中执行流程、生产者的发布注册、消费者的监听、调用过程、服务治理等
Spring
  • Spring的生命周期
  • 讲解下IOC、AOP实现
  • Spring采用了哪些设计模式,在什么地方用到的
Linux
  • 创建一个文件的命令是什么
  • touch一个已经存在的文件是什么效果 (没答出来,后来查发现是更新文件时间)
  • 修改文件名用什么命令
算法
  • 多线程依次按顺序打印奇偶数

三面

软技能
  • 每个需求的开发周期
  • 开发提测流程
  • 单元测试是基于什么维度的,怎么做到工程化
  • 什么是bug率
  • 出一个场景,当出现这个问题时应该怎么处理,处理流程
  • 平时有写博客的习惯吗
  • 什么时间能到岗
  • 知道我们是做什么的吗
  • 现在住在哪

总结

总体来说技术问题答的还可以,但是软技能方向还是答的有很多模糊点