1 年半经验,2 本学历,Curd 背景,竟给 30K,我的美团 Offer 终于来了
个人背景
如标题所示,我的个人背景非常简单,Java 开发经验 1 年半,学历普通,2 本本科毕业,毕业后出来就一直在 Crud,在公司每天重复的工作对我的技术提升并没有什么帮助,但小镇出来的我也深知自我努力的重要性,想要改变“命运”,没有背景没有资本的人,只能通过勤奋获得。
幸运女神往往会眷顾努力的人,所以当好运降临到我头上,我并不诧异,目前拿到了美团 30K 的 offer,下文也不说废话,主要分享我这次“美团面试经历”和“个人学习方法”,希望能帮助到你们。
双汇发展
内容过多,不适合在文章全部阐述,下文的面试题以及学习资料都有整理在 pdf 里,需要完整 pdf 版的,添加上小助手 vx:bj070701 即可免费领取资源包。
美团面试经历(还原最真实的 4 面)
美团一面:
1、自我介绍
2、聊项目相关
介绍项目
怎么保证 redis 与 Mysql 的数据一致性
见你写了个加随机数预防缓存雪崩,解释一下
未改进和改进后的 Jmter 测试性能对比
3、Redis
为什么选择 Redis 作为缓存?
为什么 Redis 的性能十分的高?
说一下单进程、单线程的 Redis 和你平时写的多线程程序的对比
如何保证 Redis 的高可用?(哨兵、持久化策略 RDB、AOF)
解释一下哨兵、RDB、AOF
主从一致性
Redis 数据淘汰策略
能说一下分布式事务吗?
setnx 是事务吗?
4、Mysql
解释一下事务
讲一讲事务隔离级别
为什么使用 B+树作为索引
聚簇索引和非聚簇索引的区别
5、Java
Java 是如何保证其安全性的
刚见你说了 Java 内存泄漏问题,解释一下什么情况下会出现
说一下 BIO、NIO、AIO
6、手撕算法
一个数组找出出现次数最多的一个数,如果多个数出现的次数相同则输出第一个
生产者消费者(一对一)
7、其它
平时怎么学习的
有什么需要问的吗?
美团二面:
1、手撕算法
10 个多线程保证 i 从 0 加到 10 (差点翻车,主线程忙等另外 10 个线程完结)
反转链表
上台阶(n=80)
2、操作系统
常用的 linux 命令说一下
操作系统中的信号 和 信号量有什么关系
epoll 和 Selector 有什么区别?
3、计算机网络
说一下拥塞控制
4、数据结构
说一下红黑树,你平时用的技术哪里用到了它?
哈希表怎么处理冲突?
5、项目相关
把项目放到服务器上运行的时候有没有遇到什么问题?查看项目运行的状态怎么做?
spring 和 springboot 的关系你是怎么理解的?
Spring IOC 和 AOP 说一下你的理解
为什么用消息队列?
对于消息的重复消费你有什么设计方案吗?
美团三面:
你怎么学的 Java 啊?
设计模式了解吗?单例讲一下,懒汉饿汉 double-check,怎么实现。策略模式,外观模式,适配器模式,装饰器模式,分别讲一下
联合索引什么时候不会触发索引?
AOP 了解么,有什么好处,如何使用,怎么实现的?
支付宝到银行的转账业务怎么实现?
redis 实现分布式锁
三台机器集群,按不同权重访问,怎么做?
美团四面(hr):
先介绍一下你自己吧
说一下四种 IO 模型
平时怎么去学习的?
为什么你说学习了要去实践?
说一下的最大的优点和缺点
举一下你缺点的例子
想象一下你几十年后是怎样的生活?
你觉得最痛苦的一段时间
对你影响最大的一件事情
在安排活动的过程中有没有发生什么冲突?
你有什么崇拜的人吗?
你有什么想问的?
让“努力”成为自己的背景(如何学习?)
1、看视频进行系统学习
这 1 年多的 Crud 经历,让我明白自己真的算是菜鸡中的战斗机,也正因为 Crud,导致自己技术比较零散,也不够深入不够系统,所以重新进行学习是很有必要的。我差的是系统知识,差的结构框架和思路,所以通过视频来学习,效果更好,也更全面。关于视频学习,个人可以推荐去 B 站进行学习,B 站上有很多学习视频,唯一的缺点就是免费的容易过时。
另外,我自己也珍藏了好几套视频资料躺在网盘里,有需要的我也可以分享给你:
2、读源码,看实战笔记,学习大神思路
“编程语言是程序员的表达的方式,而架构是程序员对世界的认知”。所以,程序员要想快速认知并学习架构,读源码是必不可少的。阅读源码,是解决问题 + 理解事物,更重要的:看到源码背后的想法;程序员说:读万行源码,行万种实践。
Spring 源码深度解析:
Mybatis 3 源码深度解析:
Redis 学习笔记:
Spring Boot 核心技术-笔记:
3、面试前夕,刷题冲刺
面试的前一周时间内,就可以开始刷题冲刺了。请记住,刷题的时候,技术的优先,算法的看些基本的,比如排序等即可,而智力题,除非是校招,否则一般不怎么会问。
关于面试刷题,我个人也准备了一套系统的面试题,帮助你举一反三:
总结
只有技术过硬,在哪儿都不愁就业,“万般带不去,唯有业随身”学习本来就不是在课堂那几年说了算,而是在人生的旅途中不间断的事情。
人生短暂,别稀里糊涂的活一辈子,不要将就。
文章内容中涉及到的 Java 面试题、源码文档,技术笔记等学习资料,均可以免费分享给大家学习,有需要的朋友可以添加上小助手 vx:bj070701 即可免费获取到了
评论