前言

“找工作 3 个多月了,还没有遇到合适的,坐标深圳。”“坐标杭州,2 年工作经验,裸辞 1 个月了,Java/Python 方向都在找,投的简历都石沉大海了。”“金三银四找的全是 996 的,双休只有外企和非互联网行业。”“去年冬天被裁员的,今年到现在还没找着像样的工作。”“投了半个多月简历,一个面试机会都没有,送达,已读。”

在过去的2021里,这是我在互联网里听过最多的说辞,对于程序员找工作,行情似乎并不那么乐观,在这群人中,,不乏多年工作经验的资深程序员,也有入行不久的新人程序员。今年的2022年开端,也并不完美,虽然疫情还有一部分在爆发,那么今年的金三银四春招,那么我们又该何去何从?如何拿下心仪的offer 呢?——提前做好准备。

借鉴经验和刷题是面试大厂必不可少的一道步骤,以下分享大厂面试经验与整理出来的Java核心知识宝典,大厂分别是阿里、字节跳动和美团,希望能够给你们带来一些帮助。

阿里面试经验

一面

  1. 自我介绍
  2. 项目来历
  3. MySQL 和 MongoDB 的区别
  4. 负载均衡的实现,有没有使用过nginx?
  5. 为什么数据库使用索引查询速度会那么快,是怎样实现的?
  6. 除了mysql这种关系型数据库外,还有哪些数据库?
  7. TCP和UDP的区别?
  8. 一次HTTP的完整请求过程(从网络协议的层面来阐述)?
  9. 面向对象语言的特点?
  10. hashmap和hashtable的区别?
  11. JVM的内存模型,回收机制
  12. 老板有 2000 元给我和同学分钱,首先由我提出分钱方案。如果同学不同意,则总额变为 1000 元,并由同学提出分钱方案。如果这时我不同意,则俩人各拿 100 元。请问一开始我应该怎么给出分钱方案?
  13. 假设有一个线程在取队列中的消息,怎么停止这个线程?
  14. 读过哪些源码?
  15. 项目中遇到过什么难题
  16. 印象深刻的几次学习经历
  17. 有什么问题想问的?

二面

  1. springboot或者spring的加载流程
  2. 对IOC和AOP的理解
  3. jdk和cglib实现的AOP实际上会在内存生成动态代理对象,还有什么其他办法实现AOP?经提示答出AspectJ以及实现原理
  4. Spring中的对象的作用域
  5. Singleton对象引用Prototype会发生什么
  6. 项目中怎样使用微服务?
  7. 两个服务之间调用的流程
  8. rpc与http的区别
  9. 设计rpc协议需要注意什么
  10. 项目中如何使用kafka
  11. 消息队列的使用场景
  12. kafka如何保证消息投递的可靠性
  13. 聊聊jvm,内存分布,垃圾回收
  14. 创建类的流程,类加载流程
  15. 了解我做过的项目的复杂度

三面

  1. 问项目,根据项目问问题
  2. 用过数据库索引吗?介绍如何使用,何时使用?
  3. B树、B+树、红黑树数据库分页查询,如何分页,怎么实现?
  4. 四种隔离级别,虚读和幻读什么意思发生在哪?
  5. 使用的MySQL版本,和之前版本的区别?
  6. 1.7和1.8的JVM有哪些不同?
  7. 垃圾回收算法,CMS垃圾回收器简单介绍
  8. ConcurrentHashMap的size()函数1.7和1.8的不同,或者介绍一下如果是你如何设计?
  9. 排序算法,介绍一下快速排序,快速排序时间复杂度,是不是稳定排序,介绍几种你所知道的稳定排序算法
  10. UDP,TCP,HTTP介绍一下,OSI七层模型
  11. Redis支持的数据结构

HR面

  • 为什么来阿里?
  • 有什么优势能让你来我们部门?
  • 业余有什么爱好?
  • 解决难题的经历?
  • 遇到过什么挫折?
  • 选择上海还是杭州?

字节跳动面试经验

字节跳动一面

  1. 自我介绍
  2. 手写代码:有序链表合并
  3. 聊聊项目 怎么个秒杀法
  4. 计算过qps吗 qps是什么
  5. 场景题:设计表结构 怎么实现用户量大的情况下快速查询用户的粉丝数/关注数?
  6. 聊聊IOC
  7. IOC加载过程
  8. wait和sleep的区别
  9. synchronized底层原理 是可重入锁吗?
  10. CAS原理
  11. 怎么解决ABA问题?
  12. HashMap数据结构 线程安全吗?
  13. 举个例子HashMap怎么线程不安全?
  14. 聊聊B树和B+树 数据结构是什么 查询复杂度是多少?

字节跳动二面

  • 场景1:硬盘1T,内存2G 有很多数据id, 有重复的id 怎么找到重复次数最多的Top10
  • 场景2:网页中有一个用户输入框,输入完文本后会拿到一个url,然后关闭页面。
  • 用户下次再进入页面时根据上次的url可以看到上次输入的文本 怎么实现这个功能,把你能想到的说出来
  • 数据库索引怎么建立,把你的认识说出来,后来我引到了聚簇索引,索引覆盖
  • 解释什么是索引覆盖?
  • 数据库隔离级别有哪些?
  • 举个不可重复读的例子
  • 除了设置数据库隔离级别,还有什么方法可以解决不可重复读 ?(后面提示说这个有个专有的名词)
  • 讲讲滑动窗口的过程 滑动窗口在哪里用到?
  • 手写代码:有序链表合并的升级版,合并n多和有序链表,并计算时间复杂度

字节跳动三面

  • 你如何理解后端开发
  • 有哪些后端开发经验,做了什么?
  • 介绍HashMap ,与TreeMap区别
  • 用HashMap实现一个有过期功能的缓存,怎么实现?
  • 如果需要多个线程,那怎么保证线程安全?
  • 如果把数据都放进Map ,会占用多大内存?
  • 平时怎么学习新知识?
  • 最近看了什么书?
  • 对于你的商城项目,如果对于同一个分类有多个卖家,如何设计数据表?
  • 对于高并发的系统,如何设计架构才能避免瞬间数据库收到瞬间高流量的冲击?
  • 如果你用Redis实现的话,可能会出现商品超卖的问题,那么你是如何结果商品超卖问题的?
  • 一般在支付的过程中,用户支付、账户被冻结、订单的生成、卖家库存减少、卖家收到钱,这是个一系列的过程,那么你如何设计实现分布式的事务?
  • 如果用户在提交订单之后向消息队列发送消息,这个时候网络出现异常,消息队列并没有接收到用户发送的消息怎么办?
  • 问GitHub账号
  • 两个鸡蛋问题,如果有100层楼,如何判断出恰好在第几层楼摔坏?

字节跳动HR面

  1. 为什么来头条
  2. 作为项目负责人,完成了哪些工作
  3. 实习时长、什么时候来

美团点评面试经验(非常干脆,3面直接顺利通过)

美团一面

  1. 介绍项目
  2. 分布式锁的实现
  3. 分布式锁过期解决
  4. 前缀树是什么 前缀树的使用场景
  5. 分布式数据库主从复制
  6. MySQL 死锁发生的原因和解决
  7. MySQL 分别建立索引 a,b,c ,语句 select …where b=x,c=x,a=x 能不能用到索引,建立联合索引能不能用到,a=x,b>x,能不能用到,用到几个索引?
  8. B 树和 b+ 树的区别 b+ 树的优点
  9. Linux cpu 满了怎么排查?
  10. 怎么查看占 cpu 最多的线程
  11. Linux怎么搜索文件中的字符串,写到另一个文件中
  12. liunx 网络相关命令
  13. 如何判断链表是否有环
  14. Java = 和 equals的区别
  15. Java contentMap 和 HashMap 什么区别,线程安全怎么实现
  16. HashMap 怎么解决哈希冲突,哈希冲突还有什么解决方法
  17. Java 运行时异常和检查性异常
  18. Java 类加载
  19. 什么是泛型 泛型的使用场景
  20. 面向过程和面向对象
  21. 多态是什么 父类如何调用子类的方法
  22. 问我看了啥书(设计模式,图解HTTP,Modern PHP…被打断然后开始问设计模式)
  23. 单例模式的用途 静态内部类实现单例模式的方式
  24. 工厂模式的用途
  25. 策略模式的用途
  26. Get 和 post请求的区别
  27. 网页请求的整个过程
  28. 说说自己的优缺点,对缺点的改进?

美团二面

  1. 上来先写代码,两个线程交替输出1-100
  2. JAVA锁机制(synchronize,ReentrantLock等)
  3. 乐观悲观锁
  4. sql语句慢查询如何调优
  5. 主键索引和普通索引区别
  6. 项目用的什么数据库,什么引擎,底层是什么
  7. 说一下B+树和B树
  8. B+树索引都能查到叶子节点么
  9. mvcc多版本并发控制
  10. 隔离级别了解么,说一下
  11. JVM调过么,用的什么垃圾回收器(G1)
  12. 讲一下新生代老年代(这里给我挖了个坑,等我说完,告我G1不分新生代老年代,我还没学到啊可惜)
  13. TCP,UDP区别
  14. 输入URL会发生什么?
  15. Linux常用操作
  16. 线程进程区别
  17. 用过什么中间件或者消息队列么?
  18. 有什么问题想问我?

美团HR面

  1. 自我介绍,抓住介绍的点让你详细说说
  2. 其他的面试流程?
  3. 考虑去哪里工作,北京是唯一选择吗?
  4. 为什么来美团,从哪里知道美团技术团队?

最后:为帮助开发者们提升面试技能、有机会入职BATJ等大厂公司,于是我翻遍了收藏的 5T 资料后特别制作了一个专辑一次整体放出。

说明一下:所有的面试题目都不是一成不变的,特别是像一线大厂,下面的面试题只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。大致内容包括了: 各类大小厂面经真题、Java 集合、JVM、多线程、并发编程、设计模式、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、spring面试题、spring cloud面试题、spring boot面试题、spring教程 笔记、spring boot教程笔记、最新阿里巴巴开发手册(63页PDF总结)、2022年Java面试手册一共整理了1184页PDF文档。

请收下这份面经吧!2022 阿里|字节|美团(附面试宝典+答案解析)相关推荐

  1. 收下这份面经!2020 阿里、美团、头条最新面试题总结来了

    作者:大亮.阿皓.老吴 整理:极客大学 2020 年开局就是王炸,疫情之下,互联网行业的招聘和求职,无论从岗位数量.薪资,还是从面试流程上,都受到了很大的影响. 对比往年的金三银四,今年企业放出来的招 ...

  2. KeyError: [] not found in axis_最IN黄浦 | 万圣狂欢倒计时!露台派对、变装游、沉浸式密室...请收下这份黄浦活动指南~_电竞...

    原标题:最IN黄浦 | 万圣狂欢倒计时!露台派对.变装游.沉浸式密室...请收下这份黄浦活动指南~ Ttick or Treat 一年一度的万圣节就要来了, 黄浦不少商圈都策划了多场精彩活动: BFC ...

  3. 凌恩生物资讯|细菌完成图,坑多专家少——请收下这份避坑指南

    尝试做细菌完成图的你是不是有很多疑问 这份避坑指南请收好! 小坑1."1 +X Contig,0 Gap"代表什么? 答:"1 Contig,0 Gap"的承诺 ...

  4. 【请收下这份汇总全网的Java视频资料】

    点赞收藏关注,防止下次找不到 这一篇主要是给大家收集比较好的Java学习的视频资料,而且这一篇的主要视频来源是B站 B站,众所周知,这是一个好大学,我们在上面可以找到很多好的学习资源,相信爱好学习舞蹈 ...

  5. Go开发者路线图2019,请收下这份指南

    整理 | Rachel 责编 | 阿司匹林 出品 | AI科技大本营(ID: rgznai100) Go是Google开发的一种静态.强类型.编译型.并发型,并具有垃圾回收功能的类C编程语言.2009 ...

  6. 请收下这份NLP热门词汇解读

    点击上方↑↑↑蓝字关注我们~ 「2019 Python开发者日」,购票请扫码咨询 ↑↑↑ 本文转载自微软研究院AI头条(ID:MSRAsia) 编者按:在过去的一段时间,自然语言处理领域取得了许多重要 ...

  7. 怎么写脚本_直播脚本怎么写|请收下这份攻略

    "口红一哥"李佳琦为何那么牛,有人说是因为站在了风口上,有人说是因为他标志性的吆喝声.事实上,更大的因素在于他对每场直播的精心准备.比如,李佳琦推荐每款产品时,往往都会提炼出一个. ...

  8. 有大招儿?请收下这份关于数据与智能的晋级攻略!

    随着互联网+.人工智能.大数据.云计算等新技术不断涌现与成熟,数据.技术以及产业的深度融合并引发多种变革的趋势越来越明显.面对这样的热点趋势,时刻准备且创新活跃的数据科学人才究竟该如何把握这样的技术发 ...

  9. CPU也能速刷AlphaFold2?英特尔:请收下这份23倍通量优化指南

    丰色 明敏 发自 凹非寺 量子位 | 公众号 QbitAI 搅翻计算生物界的AlphaFold2一开源,各种加速方案就争相涌现. 妹想到啊,现在居然有了个CPU的推理优化版本,不用GPU,效果也出人意 ...

最新文章

  1. FragmentTabHost中子项Fragment加载题
  2. 人生致命的8个经典问题[转]
  3. winform记事本初步实现
  4. C语言文件读写(5)-文件位置相关
  5. 使用uni-app开发微信小程序之登录模块
  6. 对linux内核学习的一点感受,对linux内核学习的一点感受
  7. CRM是什么?我心中理想的CRM形态
  8. 操作系统(二十三)生产者消费者问题
  9. php post防止hash攻击,MyBB editpost.php脚本'posthash' 参数SQL注入漏洞
  10. vsftp服务器的主配置文件的绝对路径,vsftp(FTP)服务器配置文件超详解说配置.doc...
  11. 广州体育学院有计算机专业吗,广州体育学院2014年下半年计算机水平考试报名的通知...
  12. 网课(学习通 智慧树)
  13. jquery 批量生成二维码并打印
  14. 如何运用dos命令进入C盘?Dos常用命令大全
  15. 设置 Scite编辑器的默认编辑为 UTF-8 ,及其他一些参数配置
  16. 51单片机码表c语言编程,分享自写码表单片机程序(共阴极数码管显示)
  17. AtCoder Beginner Contest 168题解
  18. 成为数据库专家必读书目推荐
  19. 恶意url_预测URL的恶意
  20. redis哨兵模式(docker)

热门文章

  1. EasyDSS平台其他协议的视频可正常播放,WebRTC却无法播放是什么原因?
  2. 如何解决近期微赞或微擎有些模块提示不是官方安装的解决办法
  3. 《C Primer Plus 》第六版 习题 第六章
  4. 【极客时间】HTTP 专栏课-罗剑锋
  5. echarts的tooltip显示百分号
  6. Java菜鸟补给站--常见面试简答题( 一 )
  7. 除了中国知网外,还有这些免费的文献论文数据库
  8. python写安卓app控制蓝牙_基于python实现蓝牙通信代码实例
  9. 企业搭建会员积分体系容易踩哪些坑?
  10. android虚拟手机云之三:文件沙盒