前言

美团Java高级工程师三面,包含:JVM、框架源码、数据库、分布式、算法等,

 

美团Java岗第一面(电话面试)

1、自我介绍

2、项目情况:

(1)选择最为熟悉的一到两个项目说明,提及该项目中的难点问题,以及如何针对该项目的开展

(2)为什么做这个项目(避免被动安排这个话题)

(3) 解释项目中遇到的难点是如何攻克,最难的点是什么。

3、基础模块考察(面试官问)

(1) 模块化的好处

(2)http协议

(3)HashMap和ConcurrentHashMap的区别,以及两者的优缺点

(4)数据库(事物,加锁,ORM)

(5)JVM原理

(6) jdk源码,以及线程(关键在线程),Java垃圾回收机制

(7)Linux 了解多少

(8) 对设计模式的看法和认知

(9)关于树的算法题-二叉树的锯齿形层次遍历

 

美团Java岗第二面(现场面试)

1、背景了解:

(1)为什么选择编程这条路?

(2)平常有没有自学,对待自学有没有好的方式方法

(3)平常喜欢看些什么书籍

2、项目考察:(面试官会挑选你在电话中没有提及的项目进行提问)

(1)项目最终实现效果

(2)项目具体部分使用的设计模式并简述选择理由

(3)项目运行过程中成员是否曾就某一点发生争执?作为Leader你是如何解决的?具体事例?

3、技术考察:

(1)数据库的范式

(2)JVM内存模型及调优

(3)用过哪些算法?选择其一进行具体说明,为何会使用该算法?

(4)如何解决高并发问题

(5)为什么我们要使用Spring呢?

(6) Spring底层代码了解多少?有没有进行解析进行再次封装?

(7) Linux 库函数和内核的调用

(8)你了解JAVA虚拟机吗?能解释一下底层的模块吗?

(9)有写过分布式的业务吗?

(10)分布式存储呢?

(11) 你觉得分布式的话会遇到什么问题呢? (这个地方给自己挖了个坑,提及到了CAP问题,然而自己并不知道)

4、LintCode 算法题 - 最小子串覆盖。

5、想要问的问题(这里要表现的虚心好学即可)

 

美团Java岗第三面(HR面试)

1、业余爱好

2、你觉得你在项目运行过程中作为Leader是否最大限度发挥了队员的优势?具体事例?

3、如何看待阿里在大数据方面的投入?对蚂蚁金服的发展有什么看法?

4、职业规划

 

总结面试

1、Java基础(这就包括多线程、jvm、源码各种特性等)

2、计算机网络相关知识和操作系统的知识(初级和高级基本都会问)

3、算法(很重要)

4、框架相关和底层实现(重要)

5、集合类的底层数据结构(基本都会问)。

6、高并发项目(高级开发必问)。

所有的面试题目都不是一成不变的,特别是像美团这种大厂,上面的面试题只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。

以下是笔者最新整理的BATJ的Java高级工程师面试题及答案,有想获取到借鉴参考的朋友:一键三连(点赞+收藏+关注) 后,添加微信:mxm9843 即可免费获取到

美团面试场景文档总结