校招美团后端一面面经40min

1. 介绍一下 RAG
2. 怎么评估 RAG 的生成内容
3. RAG 如果生成的内容不好,采用对抗学习应该怎么做
4. String 为什么设计成不可变,怎么实现的不可变
5. final 加在类上、方法上和字段上有什么区别
6. Java 垃圾回收方法介绍
7. Java8 以后的 JVM 内存介绍
8. Java8 取消了永久代,引入了元空间,为什么
手撕最长合法括号长度
问了个Sql最左匹配题目
还问了两个容斥原理题目
全部评论

相关推荐

04-02 10:01
已编辑
东北大学 Java
上次面完没发感谢信,约面部门也没变,我还以为是约二面了,结果看了官网并且问了面试官才知道是挂了秒捞然后重新一面。很反常规,但体验不错,很多问题都是根据我的简历和回答出的,参考价值不大。遇到不会的面试官会主动讲解并给台阶下。还有一些很小的问题没写全,大体是这么多。45min 部门:核心本地商业-业务研发平台1.自我介绍2.挑一个你喜欢的项目,共享屏幕画整体项目架构图和流程图3.边画边讲解整个系统流程4.既然是个学习项目,你认为这个项目微服务划分的合理吗?4.1 压测怎么做的?基于什么环境?跑了多久?TP99 怎么监测的?还是算的?5.分库分表具体怎么做的?为什么要做分库分表?5.1 既然说到 b+树了,讲讲 innodb 对 b+树的优化,以及相比其他数据结构的好处?6.项目中做过 jvm 调优吗?效果明显吗?(我简单讲了下怎么做调优,因为没量化效果,所以我说说不明显。结果面试官说你单机部署的项目,jvm 调优不明显是对的😂)7.消费队列消息者幂等性怎么做的?8.如果采用了分布式锁去做幂等性设计,qps 还能达到现在这么高吗?9.系统调优方面,你说的这个 MySQLIO 参数调优是什么?10.自定义异步线程池用的是哪个消息队列?(只知道是有界,具体是哪个没答出来)11.你之前经常提到布隆过滤器,讲讲你的项目中布隆过滤器具体存了什么,应用在哪,怎么构建的?12.聊聊第二个项目,看你写了深度集成 springai,有没有去自己实现里面的一些组件?13.项目隐私安全怎么保证的,怎么控制 llm 的权限,以防拿到不该拿的东西?14.看你之前 ai 面里提到了通过日志解决系统问题,具体讲讲日志加在哪?通过日志解决了什么问题?(这我是真没想到,竟然还会 callback ai 面试,答得不好)15.spring 循环依赖问题了解吧,讲讲使用哪些注解时可能会导致循环依赖问题?16.算法:二叉树最大路径和17.反问当天回人才库,无感谢信
查看18道真题和解析
点赞 评论 收藏
分享
部门:国际化广告crm与交易平台记不全了,大概回忆下一面(3/26)总体上不是难,面试官人很好,在我回答后都会给一些他的看法实习相关提问,这一块面试官更多的是倾听,然后给我设计的东西说了一些他的看法和建议用消息队列,redis做什么kafka的幂等性如何实现,如果说消息已经写入了,消费者如何确保只消费一次(我按照如何确保消息只执行一次说的)讲一下数组和链表有什么区别如何判断一个链表有没有环,将思路就行,两种方法mysql事务的acid,具体都是干什么的还有一些可能忘记了手撕:用rand10实现rand7合并两个排序好的链表用递归可以吗合并k个有序链表手撕全撕,比较简单反问环节:对我有什么建议,面试官给了我很积极正向的评价业务介绍的也很详细面试完一小时约二面-----------------------------------------------------------------------------------------------------------------二面(3/30)面试官全程比较严肃讲一下实习,挑一段自认为做的最好的经历讲一下(问了没多久,就10分钟左右吧,可能面试官不是很感兴趣)了解哪些数据结构讲一下红黑树和b+树你知道mysql用的什么数据结构吗?为什么不用b树事务acid(不知道二面面试官为什么又问一下这个问题)我在讲acid的时候,说一致性时,提到了一个转账的场景,正好碰到了部门的业务,让我细说了一下主要就是一个场景题如何设计一个给账户充值或扣款的接口,考虑的详细一些这个内容我提到了幂等性的设计,后续针对这个场景题的提问都是幂等性相关的有用过ai coding吗,在什么场景使用,使用应该注意什么算法:判断一个链表有没有环(一方面是很简单,还有一方面是这不是一面考过了吗)反问:有什么建议,建议我实习的过程中可以不光了解自己做的东西,还要了解下整个团队做了哪些东西(可能是觉得我实习做的东西比较片面)部门业务:这个介绍的和一面面试官介绍的不太一样,提到了需要做一些数据分析咱们团队如何看待ai coding:目前各个公司,国内外都处在一个探索的阶段,ai coding一方面并没有那么智能,还有一方面就是没有一个使用的规范,可能每个人都有自己的使用习惯,这个可能还需要再探索探索。ai coding未必能让一个程序员干的事情更少,但是需要程序员掌握更多东西,但是ai的发展又很快二面的面试官没有什么反馈,基本上就是我说什么就听什么-----------------------------------------------------------------------------------------------------------------面完第二天问hr,说没通过,问什么原因,说是匹配度问题(这个团队用的是java,在字节比较少见,还有就是二面面试官提到了数据分析,可能是因为这两块吧)去年9月面字节面的非常糟糕,面评都脏完了,这两次面试应该算是洗回来了,又约到了这周四的面试,加油最后引用一句曹丞相的话"胜败乃兵家常事,此战我军虽失利,然北方仍由我所据,几十万兵马尚存,待重整旗鼓,来日再战必胜。"来日再战必胜!
momo_ciao:rand10实现rand7的话,如果出现大于7的数直接重试不就好了,没懂。
查看16道真题和解析
点赞 评论 收藏
分享
头像 会员标识
04-03 15:04
门头沟学院 Java
美团后端开发实习一面面经总计七十分钟,面试官人挺好的,全程很有耐心。就是我自己基础太薄弱,很多八股都回答得很模糊,一遇到追问就露馅了。一、 项目拷打问了高并发下怎么做防重设计?系统的 QPS 瓶颈在哪里?如果落库失败怎么处理数据一致性?二、 计算机网络 & 操作系统1. HTTP: HTTP 1.1 版本有什么比较重要的新特性?2. TCP: TCP 链接复用问题:如果电脑开了一个浏览器,先后打开两个相同的网页标签,它们用的 TCP 链接是同一个吗        如果用不同的浏览器打开呢?3.Linux: 了解 Linux 的线程模型吗?了解多路复用函数(如 select, poll, epoll)吗?4.OS理论: 操作系统中,“并发(Concurrency)”和“并行(Parallelism)”有什么区别?它们在系统处理器视角下分    别是什么意思?三、 Java 基础 & 并发编程 (JUC)1. 面向对象: 封装、继承、多态。其中 protected 修饰符的访问规则是怎样的?2. Object类: Object 类提供了哪些基本的函数?3. 线程通信: wait() 函数和 Thread.sleep() 有什么区别?4. 线程池原理: 线程池的核心参数有哪些?5. 线程池场景: 核心线程数为2,最大线程数为4,队列容量为10。当任务不断进来时,线程池的分配和创建逻辑是怎样的?6. 线程池参数设置: 针对 CPU 密集型任务和 IO 密集型任务,线程池大小应该怎么设置?7. 追问: 为什么 IO 密集型通常设为 2N?如果两个 IO 任务耗时差异很大(比如一个是500ms,一个是50ms),设置原则上有什么差异?8. 线程池拒绝策略: 了解哪些拒绝策略?四、 JVM & 框架1. JVM: JVM 和 GC 了解过吗?平时这些底层知识是怎么学习的?2. Spring: Spring Boot 和 Spring 框架有什么区别?3. IOC: 依赖注入时,@Autowired 和 @Resource 有什么区别?它们分别是谁约定/提供的?4. Web组件: 拦截器(Interceptor)和过滤器(Filter)的执行顺序是怎样的?具体有什么差异?5. AOP: AOP 动态代理在不同的场景下有哪些实现机制?五、 数据库 & 中间件 (MySQL, MQ, Redis)1. MySQL底层: InnoDB 引擎中,主键使用自增 BigInt 和使用 UUID,在性能上有什么差异?追问: 如果是通过主键精确查询(id = xxx),自增 ID 和 UUID 有区别吗?2. MQ: 消息队列有多个分区(Partition),但某些场景下必须要保证“顺序消费”,如何实现?(例如 A 消息和 B 消息分别进了不同分区,如何保证顺序)3. Redis 容量评估: 如果现在上一个新需求,数据结构确定了,数据量级也确定了,怎么评估存储这些数据所需的 Redis     内存空间是否足够?4. 底层原理: Redis 是用 C 语言写的,你知道怎么计算一个 C 语言结构体(Struct)占用的内存空间大小吗?六、 算法题很简单的一个反转链表(LeetCode 206)。要求: 必须用 递归 和 迭代 两种方法分别写出来。
少糖去冰的小白菜很爱...:这八股看着好难
查看25道真题和解析
点赞 评论 收藏
分享
04-11 17:34
已编辑
重庆大学 Java
面试时间:3.30上午11点面试时长:1h5min部门:到家的搜索工程组?(没听清)自我介绍1、完整讲一下你的 RAG 项目(离线 + 在线 + 架构)2、重叠大小分块是自己做的吗?还是用的什么工具?3、向量化用的模型是什么,还记得吗?然后这个模型是你自己部署的吗?还是调的LLM接口?4、专门做过什么策略来提升召回率和准确率?如何评测召回率和准确率,有没有做过数字化的评估?5、如果说你的 embedding 质量比较高的话,那这个评测确实没有问题,但如果说就是向量化的效果没那么好的话,那这个方案好像也并不是很行得通,因为它可能生成向量的时候就会有问题,这个有考虑过吗?然后你有没有想办法去……(接着面试官说,算了不问了)6、关键字检索是怎么做的?7、你可以说一下在线的部分,就是用户从一个请求,到它最终拿到结果的一个过程?8、你刚才说意图节点,也就是意图识别的时候去识别它关联的那个叶子节点,我想问一下你这块是怎么实现的?9、你刚才说首先有多路召回,多路检索,然后每一路检索里面会有一个粗排,然后这些结果拿到之后可能还会有一个细排。然后想问一下你这两个排序大概都是怎么做的?然后如果是用模型排的话,你这分别是用什么模型?然后你知道这些模型的检索排序的原理吗?10、重排序用的什么模型?11、你可以再总结一下,就是从你这个离线到在线的过程中有多少次和大模型的交互吗?分别简述一下。12、我看你这个里面会有那个模型的,多模型的降级策略和熔断机制,你可以简单说一下,你现在是有哪几个模型之间可以降级?然后以及是怎么实现的?13、你这个降级是手动降级吗?还是自动降级?14、那这个自动降级是怎么感知的?比如说从模型里是刚才三个状态,它们三个状态之间流转是什么样子的?就什么情况下就把它变为异常了?然后什么情况下会让它自动恢复正常?还是就是怎么做的这块?15、看你这个里面还支持了那个 MCP 的工具调用,然后你可以说一下你现在支持哪些那个MCP,然后以及这些 MCP 是怎么和模型交互,然后大概的实现原理吗?(这一部分不太会,就扯到MCP与function calling的区别了)16、那function calling的话是怎么调呢?是 RPC调还是HTTP调?还是怎么调用的?17、看你这边那个会话,大概是怎么存储的?可以说一下吗?18、然后就是你这个会话就是大概是一个什么样的存储结构呢?可以说一下这个 MySQL表的存储的结构,就是哪几个关键字段?19、就比如说一个用户可能在一个会话里面和模型会有多轮的这种对话。就比如说问了一个问题,模型回答一次,然后我再问一个问题,他再回答一次,再问,再回答。这样的结构在数据库里面是怎么存的?是一条还是多条?20、然后就是你这个 message 表大概是一个什么结构?就是有哪几个关键字段?21、看你这个里面用到了那个Redis,然后你可以解释一下那个 Redis 的缓存穿透、缓存击穿以及缓存雪崩吗?以及具体解决思路?22、然后那个布隆过滤器,你可以说一下布隆过滤器的实现原理吗?算法题:合并区间23、然后我们谈一下,就是之前就是那个AI coding的那个面试题,然后你可以简单说一下你这边实现的思路吗?(这个是美团面试前发的AI Coding的题目,让设计一个限流中间件)24、我再问一下,就是你认为它的这个Lua脚本能满足那个需求吗?(要求同一个用户60秒内只能发送60个请求)这里面试官理解的是滑动的时间窗口,但是我实现的是固定的时间窗口,题目中只说了“时间窗口”,然后面试官就说你这个实现好像也没有问题。反问1、业务2、具体工作3、建议做项目其实可以更深入一点,而不是说只是作为一个 API 的调用方,就比如说这些模型,因为其实我们日常就是也会和这些模型交互之类的,你除了知道调它这个API,你可能需要更多的去了解一下,就是我为什么要这么设计,然后以及我这个模型具体能做什么东西,它大概是怎么实现的,有了这些可能对你未来会更有帮助,然后职业生涯可能更具有那个什么。(录音没录到,估计是想表达“更具有竞争力”这个意思吧)感受:面试官问的很细,能感觉出来面试官真的很专业,但是自己对于大模型相关底层原理的理解显然不够深入,MCP具体的工具调用也没来得及研究,属于半吊子水平也是第一次拿RAG项目来面试,这个面试官真的让我学到了很多,也让我知道了自己诸多的不足以及还需要提升的地方。整体面试体验感很好,面试官也不会特意刁难,我表达的很含糊的地方或者不会的地方,就是一句“行”帮我带过,感谢面试官现在还没消息,大概率是寄了,下去好好沉淀了二编:4.1晚上6点约二面。
查看26道真题和解析
点赞 评论 收藏
分享
评论
3
6
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务