饿了么 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-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道真题和解析
点赞 评论 收藏
分享
06-18 21:31
已编辑
南京航空航天大学 Java
总结:一共半小时,比想象中要长,问了比较多场景题, 面试风格和技术面完全不同。提问环节1.你能否先做一个自我介绍,开始今天的面试?2.你的求职意向中,是否考虑除了网络安全方向外,还会考虑java后端、测试开发等其他岗位?3.问:你是否已经确定要去做测试开发方向的工作,还是同步考虑后端岗位?答:我认为都可以考虑,现在还没有限制得很死,还在探索阶段。4.问:你在找实习时,除了测开岗位外,是否也投递了一些后端岗位?答:其实都有在投递,不会限制得很死,前端后端都会考虑。5.问:你目前是否拿到较为满意的offer,为什么可能会优先考虑我们公司?答:确还有一些offer在流程中,我对贵公司的价值观比较认同,所以可能会优先考虑。6.问:能否分享一个你在硕士期间做的相对满意、有成就感或具有挑战性的项目,包括项目背景、目的、你在其中的工作内容以及满意之处?7.问:在项目推进过程中,有哪些比较满意的点,如果重新来过,有哪些层面可以做得更好?8.问:你是否有实习经历,在之前的实习岗位是做什么的?9.问:你在实习期间实习了多久?10.问:在企业实习(如实习神经学、大数据和网络安全等岗位)与学校跟随导师做实验室项目,两者之间有什么核心差异?答:核心差异在于研究生阶段的研究工作更多是探索性的工作,在前人基础上挖掘新的领域;而在企业实习则是针对已有的岗位和明确的工作职责,主要任务是掌握当前的工作岗位,不需要过多的探索性工作。11.问:在之前实习的过程中,遇到的最大挑战是什么?答:最大的挑战是适应体制内工作,学会半文半事,与不同人打交道,包括参加会议并做会议纪要等文书工作。12.问:在实习期间,你在做人和做事能力上有哪些具体的提升?13.问:你是否有设想过如果来到互联网公司实习后可能会遇到哪些困难,并且是否决心从事互联网行业?答:认为人生是探索,虽然了解到互联网行业的差异,但尚未深入了解,打算通过实习期间的探索,尝试进入互联网行业作为未来可能的第一份工作。14.问:如果我给你这样一个暑期实习offer,你过来之后,在上手和工作推进过程中,你觉得会遇到哪些层面的挑战或困难?答:我觉得我的岗位是测试开发,主要挑战包括编写和执行测试文档,以及进行自动化测试和基础平台的研发。这些工作都是我之前没有接触过的,需要在短期内熟悉公司的流程和技术要求,例如学习自动化测试所需的Python语言或基础平台开发能力,以及熟悉测试文档的结构、编写到执行的全流程和缺陷生命周期管理。15.问:做好这个暑期实习岗位的核心能力层面有哪些?答:核心能力层面首先是编码能力,因为进行技术平台开发时编码是必需的。其次,沟通能力也很重要,需要与产品经理、开发人员进行有效沟通。所以提升编码能力和沟通能力都是必要的。16.问:你觉得我们公司或实习岗位对你来说比较好的地方主要在哪些层面?答:我觉得主要优势在于公司的定位,作为阿里系公司,拥有足够大的平台,这对于个人能力是一种很好的背书。此外,工作地点在杭州或上海,这两个地方我都喜欢,并且对测试开发相关工作内容较为熟悉,有助于能力增长。17.问:你能否客观分析一下,觉得自己与其他申请者相比,在哪些方面具有优势和劣势?18.问:你是否可以接受上海和杭州这两个地点作为实习地点?19.问:实习时间上,你最快什么时候能开始,最晚可以实习到什么时候?反问环节1.问:公司主业是否偏向某一地?答:公司没有所谓的主业或总部概念,外卖业务上上海和杭州是双核心定位,而从阿里整体来看,杭州是总部所在地。2.问:上海这边的团队主要负责哪一块业务?答:上海团队主要负责首页APP交易到购物车、下单页的链路测试,同时负责创新型业务如拼团、秒杀、卡券类业务闭环开发,以及营销工具玩法(超级吃货卡、红包、吃货豆等)的设计与测试。3.问:是否可以了解一下工作节奏?答:实习期间,公司对实习生的工作量期望并不高,更关注实习生主动学习能力和对业务的理解深度。正常情况下,正式员工晚上一般在8点至9点半之间下班,但若项目上线节奏紧张时,可能会有所加班。
查看19道真题和解析
点赞 评论 收藏
分享
评论
6
56
分享

创作者周榜

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