美团完整面经

面试岗位

面试的岗位 - 2025春季校招 【转正实习】软件服务工程师-后端方向(成都 - 软硬件服务-SaaS事业部)

一面(业务初试 - 30min)

问题

自我介绍

Java基础

  1. HashMap底层用的数据结构是什么?是线程安全的吗?那如何实现删除安全?
  2. 队列和栈的区别?
  3. 说说你对Java反射的理解?了解哪些东西?
  4. Mybatis和MybatisPlus的区别?
  5. 了解哪些设计模式?详细说一下抽象工厂
  6. MySQL的聚簇索引和非聚簇索引的区别
  7. MySQL的隔离级别是哪几种?MySQL默认的隔离级别是哪一种?会引发什么问题?MySQL解决幻读了吗?
  8. MySQL日志了解哪些?
  9. MySQL分页查询如何做?
  10. Redis常用的数据结构?set和zset的区别?
  11. Redis的持久化策略有哪些?各有啥优缺点?各用在那些场景下?
  12. 你知道那些MQ?MQ的作用?MQ的区别?
  13. Linux会那些命令?
  14. 如何进行JVM调优?
  15. 堆和方法区里面分别存的哪些东西?

计算机网络

  1. HTTPS是如何实现的?
  2. 一次网络请求会遇到那些协议?
  3. 一个机器上出现大量Tomcat套接字是什么导致的?
  4. TCP快速重传是如何实现的?拥塞控制呢?

如何学习

  1. 平时如何学习,自己的学习过程?
  2. 会通过项目的方式去练习这些知识吗?重复去学习?
  3. 到现场实习大概多久?

现场笔试

  1. MySQL笔试题

提问环节

后面二面,这里暂时没有提问。

二面(业务复试 - 60min)

问题

自我介绍

个人的优缺点?

闲聊。。。。

实习经历拷问

  1. 定制化需求开发时,如何把代码侵入降到最低?对标准的能力没有侵入或者没有感知?
  2. 基于标准的系统,做功能的二开,你觉得如何设计才能保证对标准系统侵入要小一些
  3. JVM调用时如何操作的?
  4. JVM调优的相关参数有了解吗?
  5. 如何优化慢SQL?如何找到存在的问题,如何去优化?

项目拷问

  1. 基于令牌桶如何实现库存超卖问题?
  2. Redis去扣减完,但实际上下单时,因为系统的宕机、重启导致真正下单的流程失败,那如何保证客户能抢到秒杀的物品
  3. 现在用Redis来保证看库存不会超卖,假设现在Redis中有50个奖品,现在有1万个用户来抢,是不是只有50个请求走到发MQ的逻辑,那9. 剩余9950个请求是如何处理的
  4. 如何保证消息队列的数据请求和消费一定成功呢?
  5. 这样就会使用到重试机制,就可能会导致一条消息会被消费多次,如何保证消息有且只有一次消费?
  6. 消息如何实现幂等,就靠消息版本号吗?

自主设计

  1. 有用过LRU(最近最久未使用)算法,如果让你来实现这个算法,你改如何实现? --> 双向链表
  2. 链表新增和删除的时间复杂度,查询的实现复杂度?能不能把查询的O(n)复杂度降低到O(1)?

如何学习

  1. 对新的知识学习过程中,刚开始可能会有点懵,你是如何就学习的呢?
  2. 你在整个学习的过程中有遇到比较大的困难和挑战吗,是如何解决的?
  3. 在整个项目开发中有了解过线程池的概念吗?
  4. 你对自己的职业规划和发展是怎样想的?
  5. 你觉得自己现在和初级工程师的差距在哪里?
  6. 你觉得工作经验和写码这块,从初级到中级,你打算花1年,2年,还是多久去打造?
  7. 你觉得和他(同学,同一个面试官,我和同一个项目组)比有啥优点和缺点?

现场笔试

  1. 算法笔试题 - 反转链表

提问环节

我:结合这场面试,面试官您对我未来或者学习有什么建议吗?

HR:整体,好的方面,就是说,我觉得还是挺务实的,做事非常的扎实,感觉的出来是一个有学习能力的人。建议的话,对于一些知识的掌握上,灵活度(我想做的更好但是不知怎么做)的应用上还需要提高,这可能需要你对知识的原理比较深入的了解,你可能才能做到灵活应用。一方面是看,另一方面是看过了之后更多深入的思考。第二个建议,就是不太建议刚开始就去学很多的中间件的用法,去追求知识的广度,这些东西学起来很快,迟早都能学,只要有场景。关键是去学习中间件背后的一些原理以及他为啥这样去做,到底解决哪些问题。技术背后的逻辑是相同的,例如RabbitMQ的基本原理全部弄清楚后,可能对高性能、高可用、和高并发上的设计,大概就是相同的,就是场景不一样,针对不同场景进行定制化的设计,但背后的逻辑都是相同的。

。。。

技术行业,没有一个东西是绝对的好,需要自己有一个思辨的过程,都是基于面对的问题,进行折中的一个选型

。。。

对于工程而言,SpringAI也就只是一个工具,还是学工具背后的原理

三面(HR面试 - 20min)

问题

  1. 简单的自我介绍,包含一个点(当前除了美团之外还有哪些机会,以及对工作地的期望)
  2. 北上广有考虑吗?
  3. 除了美团这块还有其他的公司同步再看吗?或者说去那个行业工作呢?
  4. 你的实习的经历,你的工作职责,团队有多少人,如何分工,解决了啥问题?
  5. 在实习过程中,有遇到啥具有挑战的事情吗?
  6. 这段实习经历下来,有啥感受,有没有一些认知或者想法?你在大学中没有的,你在这段实习中才有,或者说一开始你认为是A但是你实习后发现是B?
  7. 在这段实习经历中有啥是你不太能接受的?一些工作的细节让你很反感?或者说你觉得很奇怪,为什么会有这种情况产生?为什么会发生这些事情?为什么会是这人给奖等等这些情况,包括不限于?
  8. 到现在这个阶段,你还是认为这个观点吗?还是说会有些变化?
  9. 你对你自己找的这份工作期待吗?或者你想找一个什么样的工作呢?
  10. 最近你没有和学长学姐了解过互联网企业或美团这样一些不好的地方,不知道你有没有上小红书提前去查一查?
  11. 你有没有刷到过或者和朋友这些,细致的了解过工作,就算你是程序员,你的工作也不只是写代码,其他的工作万一你不喜欢怎么办?
  12. 你对你的薪水有期待吗?这里指的是你成为正式员工,大概期待的月薪是到怎样的一个区间呢?
  13. 你有什么爱好吗?

提问环节

我:通过这场面试,面试官您对我未来的发展提一些建议吧!

HR:你现在还在实习,你可以提前看一看互联网公司是不是你理想中的一个工作,多方了解一下。。。在入职之前要有一个比较好的认知或者说提前做一个输入也好,在未来不管你在哪一家公司,你能干的更好的前提是能不能干的更久(人生价值观、理念、风格、体验等其他方面和公司契合度越高,在公司落地成功的机率就越高,你的技术能力提升和实践机率就越大)!。。。

总结

这三轮面试下来,个人感觉这个岗位对校招生还是很友好的。一面主要是考察Java基础和计算机网络相关知识,Java基础还好,但是计算机网络就有点汗流浃背了;二面主要是对你项目的拷打,给我的感觉很好,开始我给面试官的影响很好,状态很放松;三面,主要对你的一个综合的考察,还是很轻松。欢迎大家在评论区交流!

相关推荐
BD_Marathon1 分钟前
面向对象高级:static
android·java·开发语言
xrkhy5 分钟前
javaweb面试
面试·职场和发展
在钱塘江10 分钟前
《On Java进阶卷》- 笔记-1-枚举类型
java·后端
哪个旮旯的啊10 分钟前
Java 队列同步器 与 Lock锁详解
java
fouryears_2341720 分钟前
Spring MVC 统一响应格式:ResponseBodyAdvice 从浅入深
java·spring·mvc·springboot
Jacob023438 分钟前
为什么 Java 到了 2025 还在内存泄漏?
java·后端
自由的疯44 分钟前
Java 11 新特性之 标准HTTP客户端API
java·后端·架构
自由的疯1 小时前
Java 11 新特性之 TLS 1.3
java·后端·架构
心月狐的流火号1 小时前
Mybatis 分页插件 PageHelper SQL异常拼接问题深度分析
java·mybatis
都叫我大帅哥1 小时前
TOGAF业务架构阶段指南:从战略到代码的全链路实践
java