半年Curd程序员经验,三面美团之后居然给了30Koffer!
Posted 我是老实人辶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了半年Curd程序员经验,三面美团之后居然给了30Koffer!相关的知识,希望对你有一定的参考价值。
个人背景
如标题所示,我的个人背景非常简单,Java 开发经验 1 年半,学历普通,2 本本科毕业,毕业后出来就一直在 Crud,在公司每天重复的工作对我的技术提升并没有什么帮助,但小镇出来的我也深知自我努力的重要性,想要改变“命运”,没有背景没有资本的人,只能通过勤奋获得。
幸运女神往往会眷顾努力的人,所以当好运降临到我头上,我并不诧异,目前拿到了美团 30K 的 offer,下文也不说废话,主要分享我这次“美团面试经历”和“个人学习方法”,希望能帮助到你们。
双汇发展
内容过多,不适合在文章全部阐述,下文的面试题以及学习资料都有整理在 pdf 里,需要完整 pdf 版的,“查看文末下载地址”即可免费领取资源包。
美团面试经历(还原最真实的 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 面试题、源码文档,技术笔记等学习资料,均可以免费分享给大家学习,有需要的朋友可以“查看下图” 即可免费获取到了
以上是关于半年Curd程序员经验,三面美团之后居然给了30Koffer!的主要内容,如果未能解决你的问题,请参考以下文章
三面美团Java岗,HR现场直接发offer,他是横着走出来的!
三面美团Java岗,字节跳动Java岗经典面试真题,成功跳槽阿里!