美团Java面试经历总结【一面、二面、三面】
LittleE27
背景
在国外做了两年Java企业系统开发,2018年夏天决定回国发展。在家休整了两个月觉得该找工作了,于是通过app发简历找工作机会,很快接到了美团HR的面试邀约电话。一二三面同一天完成,效率不错,共历时三小时左右。
一面
被HR带领到工作区前的面试区域,有几对正在进行着面试,很热闹,看来最近美团需求量不小。
一面问题如下,只能记个大概:
自我介绍、过往工作经历
介绍一下项目流程(由于我之前没有任何面试经验,没有get到面试官的点,答得不太好,面试官应该是想让介绍一下怎么设计你的系统框架、用到哪些技术)
乐观锁和悲观锁,应用场景有哪些?什么情况下会发生死锁,怎么处理死锁?
hashMap的原理,由此延伸问红黑树是什么,hash冲突怎么解决
排序算法记得多少
写代码:两个stack实现一个queue
二面
一面结束后,面试官让我稍等,由于没经验,我以为今天面试就结束了,结果等来了第二位面试官,也是技术面。
自我介绍,介绍一下项目流程
进程和线程的区别
Synchronized与Lock的区别
事务隔离级别和实现原理,mysql发生锁死怎么办?
Java的垃圾回收机制
线程池了解多少,线程池的参数有哪些?
HashMap原理(感觉是必问题)
问了三道题:
- 有100只瓶液体,其中一瓶是毒药,一只小白鼠喝到毒药一周后会死亡。请问给一周时间,至少需要多少只小白鼠能确定哪瓶是毒药?(把瓶子序号变成二进制)
- 代码实现链表的反转
- 一个整数数组先升序后降序,给一个整数k,返回它在数组中的index,找不到的话返回-1
三面(部门leader面)
二面和三面中间等了二十多分钟,因为三面面试官在开会。面试官很友好,没怎么问技术问题,看到我用的是oracle数据库,问oracle里面的函数有什么用,我没答很好。接着就是聊聊我应聘的部门在做什么,谈谈我对项目的理解,怎么开展一个项目。
总结
整个面试过程两点开始,五点多结束。HR让回家等消息,消息没来,估计凉凉。收获很大,了解了现在互联网公司是个什么工作环境和状态,继续努力!