饿了么 Java 面经(停更)

流程已结束(8.28)

一面(8.16)
90 min = 40 min 实习 + 20 min 项目 + 20 min 算法 + 5 min 闲聊 + 5 min 反问

实习 (40 min)
架构描述
项目遇到的最大困难
产品最大的优势,市场如何
看看 github

项目(20 min)
讲讲科学上网的原理
Redis 集群
本地缓存 Caffeine 的优点缺点
通过项目问了问读写分离
异步线程池参数
消息队列延迟队列,模型等

算法(20 min)
最大岛屿面积(类似 lc 200 岛屿数量)

闲聊(5 min)
有什么爱好?
身高多高?
篮球打哪个位置,背打怎么样,中投呢?有打过校内比赛吗?(

反问(5 min)
组内主要工作、难点
若有幸加入,在校这段时间我应该在哪方面提升以更快融入工作
饿了么与美团外卖的竞争情况,后续发展

组内讨论一下,若没问题就约 2 面(但愿)

二面(8.26)
100 min = 30 min 算法 + 20 min 项目 + 40 min 场景设计优化 + 10 min 反问

算法(30 min)
数组 + 链表实现 HashMap,树化无需实现,只需写出什么时候树化和退化
● 写的非常详细,评价为算法能力凑合

项目(20 min)
挑一个你觉得难度较大的项目介绍一下
● 面试官评价为玩具项目,没什么难度

场景(40 min)
设计一个秒杀项目,要求抗住 10w+ QPS,画出原型图并且详细描述落地方案,要求能直接使用方案实现
● 评价为玩具设计

反问(10 min)
主要业务,技术挑战,未来发展
面试流程?
● 如果通过,一周内就会有 hr 面
应该提升的方面?
● 不要做玩具项目,要做有深度的项目,比如实现一个 Linux 1.0 
● 夯实基础
全部评论
什么bg呀,欸,很早就投了,部门第二天就分了,但是一直简历评估
3 回复 分享
发布于 2023-08-16 11:13 安徽
这项目是牛客论坛吗
1 回复 分享
发布于 2023-08-28 09:58 天津
和他说照进来给他抢篮板
1 回复 分享
发布于 2023-08-16 22:31 陕西
跟他讲把我招进去来solo🏀
1 回复 分享
发布于 2023-08-16 14:05 福建
同学可以看看微众银行校招https://www.nowcoder.com/share/jump/8467508972852227911
点赞 回复 分享
发布于 2023-08-24 19:15 广东
感觉是一个部门,最后问的问题也都差不多,最经典是组内讨论一下,没问题就约二面,结果昨晚我一看官网流程结束。
点赞 回复 分享
发布于 2023-08-22 08:23 北京
佬约二面了吗
点赞 回复 分享
发布于 2023-08-21 18:37 重庆
那和美团竞争发展怎么样😂
点赞 回复 分享
发布于 2023-08-17 18:25 北京
同学 有笔试吗
点赞 回复 分享
发布于 2023-08-16 13:48 浙江
这怎么打球还聊上了 哈哈哈哈
点赞 回复 分享
发布于 2023-08-16 11:59 北京
怎么还唠上家常了
点赞 回复 分享
发布于 2023-08-16 11:31 北京

相关推荐

总结:面了一个小时,前半段问项目,后半段问八股,两道编程题。面试官很热情,介绍了半天他们的业务,像是在汇报哈哈哈哈。八股部分1.单例模式有用过吗,怎么实现的(不知道怎么实现)回答:用得比较多的地方是数据库连接池,全局只能有一个连接池,并且提供全局访问。以下是搜索结果:有五种经典的实现方式。第一种是饿汉式(线程安全)他在类加载的时候就立即初始化实例,使用场景是实例占用资源少,且频繁使用。第二种是懒汉式(非线程安全)延迟初始化,在使用的时候,如果没有这个实例才初始化,在多线程环境下会创建多个实例。第三种是线程安全懒汉式,通过synchronized保证线程安全,但性能差。(因为锁的粒度很粗)不建议高频调用。第四种是双重检查锁(DCL)。特点是延迟初始化,并且线程安全第五种是静态内部类(推荐)。特点是利用类加载机制保证线程安全,延迟初始化且无锁。2.JVM运行时数据区回答:有堆,栈,方法区。堆存储对象实例,数组;栈存储线程的调用栈帧;方法去存储对象信息和方法信息。3.事务ACID了解吗回答:原子性,持久性,一致性,隔离性。1.原子性由undolog实现2.隔离性由锁或者MVCC实现(吟唱一下隔离性的四个级别)3.持久性由redolog实现4.一致性由前三者一起保证实现。场景业务题1.在一个发优惠券的场景,我有一个10w行的用户数据表,要取出里面的用户信息放入模型中,返回优惠券的结果,(模拟用户领券的过程)。我需要做的是,验证这些数据是否满足一定的断言(例如面额超过50块,补贴力度过大)。由于一台机器的内存不足以存放这些数据,你有四台机器,请你设计一个批量请求的工具,以分布式的方式去跑这些数据,你会做那些设计?回答:我也没听太懂这些问题。以下是搜索结果。我将设计一个分布式批量处理工具来解决发券场景中的大数据验证问题,核心目标是实现高效分片处理、动态负载均衡、分布式断言校验和结果聚合。以下是详细设计方案:整体架构设计核心组件设计1.分布式协调器(Coordinator)部署在Master节点,负责全局调度2.工作节点(Worker)部署在4台工作机器,负责实际处理3.断言验证引擎该设计可实现10w用户数据的分布式处理,核心优势:1. 横向扩展 :通过增加Worker节点可线性提升处理能力2. 故障容忍 :自动重试和检查点机制保证可靠性3. 资源优化 :流式处理避免内存溢出4. 实时监控 :全过程可视化跟踪2.饿了么的搜索功能,请你针对这个搜索功能写一些功能点。比如输入奶茶关键词,返回一些结果。回答:我只回答了搜索框不能为空,对返回结果进行排序等等。以下是搜索结果。1.搜索前引导功能a.热词推荐i.功能描述:搜索框下方动态展示当前商圈热门关键词(如奶茶,果茶)ii.奶茶示例:用户点击奶茶热词,直接跳转到相关商品列表页b.历史搜索i.功能描述 :根据用户过往搜索记录(如“芋泥奶茶”)生成个性化推荐。ii.数据支撑 :历史搜索订单转化率仅次于商家直达c.场景化引导i.功能描述​:分时段(早餐/下午茶)推送关联词(如下午茶时段优先显示“奶茶+甜品”组合)。d.语音/图像搜索i.​功能描述​:支持语音输入“奶茶”或拍摄奶茶图片触发搜索,系统自动转文字并匹配商品。2.关键词处理功能a.​智能纠错与联想​i.功能描述​:自动纠正拼写错误(如“奶车→奶茶”),并联想高频词(如“奶茶→珍珠奶茶”“芝士奶盖”)。ii.技术实现​:基于搜索日志构建纠错词库与拼音转换模型b.​同义词与品类扩展​i.​功能描述​:搜索“奶茶”时同步召回“果茶”“乳茶”等同品类商品。c.​意图识别​d.​功能描述​:i.若用户多次搜索“低卡奶茶”,优先展示低糖商品;ii.若搜索“奶茶+外卖速度”,则突出配送时效快的商家。3.搜索结果展示功能a.​多维度排序​i.​排序逻辑​:综合销量(70%)、评分(20%)、配送速度(10%)等权重生成列表。ii.​奶茶示例​:高销量“喜茶”排列在低销量小众品牌前。b.​分层筛选器​i.​筛选条件​:ii.价格区间(如“10-20元”);iii.口味(“芋泥”“黑糖”);iv.商家服务(“免配送费”“会员折扣”)。c.​商家直达与商品级搜索​i.​功能描述​:ii.输入“奈雪の茶”直接进入店铺页;iii.搜索“霸气葡萄”显示该单品而非全店商品。d.​商业化融合​i.​功能描述​:在结果页插入“奶茶排行榜”或限时优惠活动(如“第二杯半价”)。4.搜索后优化功能a.​个性化结果缓存​i.​功能描述​:用户多次搜索“奶茶”后,首页历史搜索栏固定显示该关键词。b.​搜索分析看板​c.​后台功能​:统计“奶茶”搜索量、点击率、转化率,指导商家优化菜品命名(如将“红茶拿铁”改为“鸳鸯奶茶”)。3.测试人员除了写测试用例之外,还要做那些事情?1.会参与需求的分析与测试策略制定a. 参与需求评审会议,分析需求的可测试性b. 指定测试计划2.测试设计和用例开发a.测试场景建模b.测试用例编写3.测试执行与缺陷管理a.分层测试实施(单元,集成,系统测试)b.缺陷全生命周期管理4.质量评估与报告输出a.质量指标分析b.测试报告编制5.自动化测试实施a.接口自动化b.UI自动化6.跨团队协作a.开发写作b.产品沟通7.测试过程改进8.技术研究与创新笔试题1.SQL题目:用sql找出不同课程的成绩的第二名和第三名WITH RankedScores AS (SELECTstudent_id,course_id,score,RANK() OVER (PARTITION BY course_id ORDER BY score DESC) AS rankFROM scores)SELECTcourse_id,student_id,score,rankFROM RankedScoresWHERE rank IN (2, 3)ORDER BY course_id, rank;2.LeetCode梦的开始:两数之和反问环节1.你们的业务内容回答:主要负责搜索功能和营销功能,搜索就是饿了么的搜索框部分,营销主要负责爆红包等等。日常还要做一些系统的压力测试,以及与其他团队一起做集成测试。年度还会做测试平台开发,质量和效率提升的OKR。2.工作节奏回答:9点半上班,周一到周四可能下班晚一点,周五正常6点下班,周末双休。3.开发技术栈回答:主要是Java
查看11道真题和解析
点赞 评论 收藏
分享
05-26 16:18
门头沟学院 Java
从4月1号的第一次面试到5月13号的滴滴二面,暑期实习也是终于画上句号了。从3月初就开始投 ,投了几十个公司,有笔试有面试的一共有20多个公司。timeline大概如下:3.8      米哈游笔试挂3.16    快手简历挂3.27    蚂蚁笔试后挂3.28    饿了么笔试后挂4.1      美团一面挂4.2      京东一面过4.7      京东二面挂,15分钟结束,kpi4.9      美团捞了一次,可惜没撕出来,又挂4.23    腾讯wxg一面秒挂,太菜了5.7      华为技术面和hr面通过,泡池子中5.8      滴滴一面5.13    滴滴二面5.23    滴滴口头oc5.26    滴滴offer滴滴一面面经1.介绍一下你的项目2.介绍一下短信登录具体是怎么优化的,redis的key和value都是什么3.在更新策略中,为什么采用先操作数据库再删除缓存的策略,为什么不用先删除缓存再操作数据库的策略?先操作数据库再删除缓存的策略是否有问题,应该如何解决?4.如何在不用reentrantlock锁的情况下,用redis分布式锁实现可重入锁?key和value都是什么?5.在优惠券的一人一单模块中,key和value都是什么6.项目中是如何用乐观锁解决缓存超卖的?考虑一个场景,如果一个商户要从供货商进货,还要进行售货,详细说一下用乐观锁的流程?7.现在有一个100层的楼,现在如果想用两个球测试,球从哪一层开始扔会碎,在这一层以上扔的话,球都会碎,在这层往下扔,球不会碎。请问最少需要扔多少次?8.手撕题:打印金字塔9.手撕题:数组中的第k个最大值元素滴滴二面总结1.在项目中,GEO具体是怎么使用的?商户和商户之间计算距离的具体算法是什么?如果多个人都进行附近商户查询时,会不会出现性能问题?2.feed流的推模式和拉模式?一般情况下,拉模式用的比较多,为什么你采用推模式呢?是否注意过朋友圈和微博消息推送时,技术实现的区别?3.在java集合中,有哪些线程安全的集合?你提到了threadlocal,threadlocal具体是做什么的,原理?有哪些问题?你提到了内存泄漏,内存泄漏有时只是几个变量的大小,不会造成多大空间的泄露,还有其他的问题吗?4.JVM的内存模型?5.mysql的事务的隔离级别?6.MySQL的索引有哪些?说一下B树和B+树的原理?B+树在插入节点时,会出现哪些树形结构的变化?7.线程池的参数有哪些?你在项目中是否用到了线程池?在真正使用中,如何选取线程池的参数?如果在一个I/O密集型系统中,如果让核心线程数直接等于CPU核数x2是否不合适,考虑一个场景:如果一个系统需要qps=10000,系统的请求处理时间为100ms,那么核心线程数该怎么设置?8.手撕:在100000个数据中,找到最大的10个数据,topk问题。中间也自闭焦虑过,最后感谢滴滴收留了我,大桔大利。
查看17道真题和解析
点赞 评论 收藏
分享
05-30 19:03
门头沟学院 Java
4.17投的简历4.30约我一面5.8一面Redis实现Session共享的延伸:如果用的是本地缓存,如何实现数据一致性?会有什么问题?Redis的RDB持久化和AOF持久化Mysql什么能保证数据崩溃重启不丢失?Mysql的binlog日志Redis的Cache Aside Pattern和Read/Write Through Pattern缓存穿透的解决如何实现视频的点赞取消,判断用户是否点赞,点赞的次数(Redis)如果不使用设计模式是否可以?设计模式是为了干嘛的?TCP四次挥手(如果存在用命令查到,系统中存在大量Close wait状态,是因为什么?)双亲委派模型(大体上是这些,其他的有些忘了)是否有offer了?反问:有什么可以改进的地方?接下来还有几轮面试?代码题:在保证线程并发安全的情况下,并发读取多个文件的字符串,并且合并统计出现次数,确保5秒的超时时间。面试官人很好,会一直提示你,并且出的题都是根据场景来的,我最后代码题,有一点点没写出来的代码,面试官也帮我点出来了。也是经过两周hr给我打电话说部门没hc了,意料之内,情理之中复活换了个部门进行二面,5.23二面,一共1小时15分钟左右二面全程拷打项目,我写的是点评加12306,不过本人写了两段大数据开发的实习经历(没问)面试官问,我一边回想一边说自己做了什么项目改进3天后告知2面通过,约了5.29进行3面5.29三面发现是TL和HR一起面的,TL拷打我项目几个问题, 我记得最深刻的一个是我用lua脚本代替分布式锁来进行抢单,lua脚本好在哪里?没回答中点,擦边回答了,最抽象的是hr换岗之后没跟我说部门是哪里的(不是三面的hr),然后他问我知道公司在哪里么,我回答了一堆意向杭州的话,听到他们说北京的时候有点红温了,赶紧圆了一下。反问:培养方案是否有机会转正进去负责的业务5.30 oc,感觉几个月以来的付出都有了回报,这几个月都看着大佬们的oc非常羡慕,终于自己也等来了收获,来此还愿,积攒人品,我希望大家在周围人都oc,坚持不下去的时候都咬牙坚持下来,别放弃自己,越痛苦沉重的时候,越要学习,机会来临的时候,很可能只有这一次,请把握住!
查看17道真题和解析
点赞 评论 收藏
分享
评论
6
56
分享

创作者周榜

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