【面经】美团后端开发123+HR面(已意向书)
完成笔试后很快就进入面试了,不得不说,美团的面试官都很友好,面试体验极佳。
-------一面
1. 自我介绍,项目提问
2. Java集合类常用哪些,ArrayList与LinkedList区别;HashMap底层实现,为什么扩容是2的幂次;如果想要线程安全该怎么用
3. JUC包下对哪些类了解,synchronized和JDK提供的锁区别;CAS原理,ABA问题;锁升级过程讲一下;volatile讲一下,为什么不能保证原子性
3. JVM内存模型,新生代有哪些区,作用是什么;如何判断对象是否可以被回收(1引用计数2可达性分析)
4. JVM常用垃圾回收算法,讲一下CMS原理
5. Redis常用数据结构;有序集合底层实现;查找排名在底层如何实现;如何用Redis实现分布式锁,可能遇到的问题和解决办法
6. 手撕一个二分查找
------二面
1. 自我介绍,项目提问
2. 聊计网,TCP3次握手过程,第三次是否可以携带数据,如何避免SYN攻击(syncookies);TCP四次挥手说一下,为什么要等待2MSL,第二次和第三次挥手是否可以合并(可以)。
3. 操作系统,进程、线程和协程的区别;如果创建很多个线程会有什么问题;进程间通信方式有哪些
4. MySQL索引如何实现,为什么用B+树不用B树二叉树;聚簇索引和非聚簇索引的区别;平时索引优化如何做,最左匹配原则;
------三面
1. 自我介绍,聊项目
2. 实习期间学到哪些东西,有什么体会
3. 对项目软件开发的理解
4. 个人的优点和缺点
-------HR面
1. 自我介绍,项目介绍下
2. 主要负责哪些工作,遇到什么问题最后怎么解决
3. 个人职业发展规划
4. 有哪些优点缺点
5. 投了哪些公司,如果都能去会选哪家