爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!

说在前面的话

程序员在面试前可以进行一些心态上的调整,以更好地应对面试挑战。

以下是一些建议:

  1. 保持自信:自信是成功的关键,它能帮助你在面试中保持冷静,并充分展示自己的技能和经验。要相信自己的实力,并提醒自己你已经准备好了这个面试。
  2. 保持积极态度:尽量把面试看作是一个机会,而不仅仅是一场考验。它是你向潜在雇主展示你的技能、经验和潜力的机会。即使面试过程中出现了一些困难,也要保持积极的态度。
  3. 避免过度焦虑:在面试前,可能会感到紧张或焦虑,这是正常的。然而,过度的焦虑可能会影响你的表现。可以通过深呼吸、冥想或者其他放松技巧来缓解焦虑。
  4. 做足准备:充分的准备能够增强自信,并减少焦虑。应该提前了解公司、职位和可能的面试问题。在面试前复习你的技能和经验,并准备一些示例来展示你的能力。
  5. 保持真实:在面试中,诚实地回答问题,不要试图伪装自己或夸大自己的能力。真实的自己最吸引人,也最能让面试官看到你的实际能力。
  6. 调整期望值:面试并非一定要得到这份工作,它也是你了解公司和团队的机会。即使面试结果不尽如人意,也不要灰心,而是把它当作一次学习的机会,从中汲取经验,提升自己。

总的来说,面试的心态调整主要是要对自己有信心,保持积极和开放的态度,充分准备,同时不过度焦虑。记住,每一次面试都是一个机会,无论结果如何,都能从中学习到一些有价值的东西。

下面给大家介绍秋招的面试经过,希望能够帮助到大家的学习!!

切记,项目、实习一定需要总结,背诵下来,项目里有挑战的事情、前因后果、遇到的难点,实习的收获、个人的成长等,这些问题都是高频题,如果提前总结的话,面试的时候可以侃侃而谈,一般面试官问这些问题的时候,我一般就直接讲个 10 分钟,这样面试就过去 1/4 了。

一些原理的介绍,千万不要讲一两句就结束了,能多深入多深入,多发散多发散,多水点面试时长,最好讲到面试官打断你,这样面试绝大部分时间都是被你掌控的。

算法也是,即使你会,也要拖一会,一般拖到个 45min 左右就不会给你出第二个算法题了,这也算一个小技巧?

八股按照 JVM、Java、Mysql、Redis、计网、OS 的优先级(个人根据面试提问频率总结)着重复习。

不知道什么情况,感觉秋招问的比暑期简单一点?可能是实习和项目经历丰富,大部分面试有个二三十分钟都是介绍这个。

08-15 快手一面 45min

  • 自我介绍。
  • 为什么想来快手。
  • 介绍一下阿里的实习经历。
  • 介绍一下字节的实习经历。
  • 介绍下项目经历。
  • 介绍一下 Synchronize 机制。
  • 最好是要深入到 Cpp monitor 对象。
  • 顺带介绍了 wait 和 notify 的实现原理。
  • 你刚刚提到 wait 和 notify,AQS 是否有类似的实现?
  • 介绍 AQS 的条件队列。
  • 算法题:带过期时间的 LRU 缓存。
  • 反问。

隔了两天收到二面邀请。

08-17 阿里滔天一面 35min

  • 自我介绍。
  • 实习经历介绍。
  • 实习的时候做的最有成就的一件事?
  • 体现了你的什么价值?
  • 还能做的更好吗?
  • 挑一个你最熟悉的项目介绍一下。
  • 介绍一下数据库插入的全流程。
  • 你刚刚提到索引,介绍一下索引是如何工作的。
  • B+ 树相当于 B 树的优点在哪里?
  • 你提到 lsm 树和列存储,在实际工作中有使用吗?介绍下使用场景。
  • 在阿里实习的成长。
  • 介绍一下 JVM 的垃圾收集机制。
  • 为什么新生代需要三个空间,优点在哪?
  • 介绍一下 G1 垃圾收集器。
  • 介绍下类加载机制。
  • 反问。

当天收到二面邀请。

8-18 阿里滔天二面 80min

老板面,感觉更多的是压力与思想上的拷打。

  • 自我介绍。
  • 字节实习经历介绍。
  • 字节实习经历拷打。
  • 你认为你和别人的优势在哪?
  • 为什么要来面我门部分?
  • 看你之前都是做底层产品偏多,我们大多数业务,你觉得你是否能够适应下来?
  • 阿里实习经历介绍。
  • 做这件事的内在驱动是什么?
  • 是你主动去做的吗?
  • 成果是怎么衡量的?
  • 这个成果达到预期了吗?
  • 如何判断成果是否达到预期了?
  • 还有别的办法吗?调研过吗?
  • 你认为是技术重要还是业务重要?
  • 你更喜欢做技术?可是我们这大部分都是业务?
  • 这里我踩坑了,对方是业务部门一定要说自己喜欢业务,扯一扯技术赋能业务之类的黑话。
  • 业务落地能力和性能调优能力是不一样的,你怎么样评估你的业务落地能力?
  • 你做一个需求之前会考虑哪些?
  • 介绍下项目中的数据库表设计思路。
  • 一个业务想要做好,需要哪些品质?
  • 反问。
  • 本来范围也就 60 几分钟,然后面试官回答着又扯到业务和技术上去了,又拉扯了十几分钟。

29 号笔试完成后约 HR 面。

8-19 快手二面 30min

最没有体验感的一次面试,全是写题,既然全是写题,为什么不搞个笔试?面试的意义何在?而且我不清楚快手为什么要周日面?

  • 自我介绍。
  • 算法题:k 个一组反转链表。
  • 算法题:多个有序数组排序。
  • 智力题:两个人拿 100 个石头,最后一个拿完的胜利,每人一次只能拿 1~5 个,必胜策略。
  • 面的时候没想出来,面完了也懒得去搜。
  • 概率题:两个人都有可能在 6~7 点到达公园,到达后,最多会停留 15min,问,相遇的概率。
  • 反问。

中途流程灰了,然后 9 月 11 号莫名其妙又发三面邀请,流程又亮起来了,拒。

8-23 滴滴一面 40min

  • 自我介绍。
  • 挑一个项目介绍一下。
  • 介绍一下 JVM 内存区域。
  • 这题我直接说了十分钟,被喊停的。
  • 介绍一下 Java 常见集合。
  • 介绍一下 TCP。
  • 这里也说了差不多十分钟
  • 算法题:顺时针打印螺旋矩阵。
  • 反问。

上午 12 点面完,中午 12 点 45 然我去二面,绷不住了,当时正在午休,没看见消息,这奇葩的设定。

后来看到消息,想了想直接放弃了,对滴滴兴趣也不大,然后 2 点 15 接到了一个电话,当时在开会没接,2 点 30 又打电话来,问我为啥鸽他们,然后让我立即上线。

二面聊了 20 来分钟把..... 当天感谢信。

8-22 字节一面 45min

  • 自我介绍
  • 字节实习经历介绍。
  • 你提到 Redis Moved 错误,能介绍一下吗?
  • Redis 集群模式的优缺点?
  • 挑一个项目介绍一下。
  • 怎么做查询优化的?
  • 用直方桶维护的话,岂不是每一次插入删除都要维护每个字段?
  • 怎么优化呢?
  • B+ 树 crabbing 协议介绍。
  • 淘宝店铺中的热销榜单如何设计?
  • 先考虑热销商品,访问量大,用 Redis 减少压力。
  • 立马提出用 Redis 有序列表数据结构。
  • 由于商品火热,因此实时维护 zset 不太合理,压力过大。
  • 可以先记 pv log,流式产品解析 pv log,存特征表。
  • 定时任务批量处理,更新 Redis 列表,刷新缓存。
  • 流处理和批处理哪个好?使用场景。
  • MapReduce 介绍一下?
  • 介绍一下 MIT6.824 实验。
  • 算法题:三数之和。

25 号收到二面邀请。

8-29 字节二面 40min

  • 自我介绍。
  • 为什么不选择保研。
  • 平时怎么学习的。
  • 字节实习介绍。
  • 每次面试都要介绍实习.....
  • 一般我一介绍就是 10 分钟起步。
  • 阿里实习介绍。
  • 你是怎么去评估做这件事的价值。
  • 能否给我讲一下你这个产品的核心价值。
  • 看上去你做的这些事并不是特别有价值?价值体现在哪?
  • 如果阿里和这边同时给你发 offer,你会怎么选择。
  • 平时有哪些爱好。
  • 算法题:最小栈。

9 月 1 号收到三面邀请。

9-3 小红书一面 40min

  • 自我介绍。
  • 实习经历介绍。
  • 项目经历介绍。
  • 介绍一下 Synchronize 机制。
  • 介绍一下 Java8 到 Java21 的新特性。
  • 介绍一下 Java19 新特性虚拟线程。
  • 介绍一下 Java 中协程的实现原理。
  • 平时通过哪些途径学习。
  • 介绍下 Java 常用集合。
  • 介绍下限流的几种实现方案。
  • Redis 滑动窗口、滚动窗口限流。
  • Sentinel 分布式限流解决方案,基于窗口。
  • 受控限流,令牌环。
  • 漏洞算法。
  • 代码设计题:实现 Redis 滑动窗口限流。

5min 后收到二面通知。

9-3 小红书二面 30min

  • 自我介绍。
  • 实习经历介绍。
  • 在阿里的成长。
  • 数据库 DTS 怎么实现的,断点续传怎么实现的。
  • Redis 常用数据结构介绍下。
  • 哨兵机制介绍下。
  • 算法题:消消乐。(给定一个数组,连续的相同的数字会被消除)

9 月 12 收到 HR 面,拒。

9-4 阿里滔天 HR 面 50min

  • 自我介绍。
  • 为什么选择来我们这。
  • 在学校是否有参加过一些比赛、社团。
  • 为什么不保研。
  • 介绍下在阿里的实习经验。
  • 你认为,你实习的三家公司里,那家公司你体验最好?
  • 这三家公司里,你收获了什么。
  • 在阿里实习时,有遇到什么困难吗?怎么解决的。
  • 有用到哪些先进的技术。
  • 你认为你和别人的 gap 在哪?
  • 期望薪资是多少。
  • 别的同学也很优秀,你认为你的优势是?
  • 当你遇到困难时,怎么去解决的?
  • 反问。

聊天时得知,今年滔天 90% 校招 offer 都是 p4,物是人非啊。

9 月 7 号 OfferCall,由于给 P4,拒。

9-4 字节三面 50min

  • 自我介绍。
  • 大一到现在,学习的路线介绍一下。
  • 阿里挑一件事讲一下。
  • 字节环境部署流程提速 40% 怎么得出的。
  • 在外面有看哪些机会?我不希望到时候你接了意向然后又拒掉他,如果同时发 offer 会来我们这吗?
  • 为什么想来我们部门。
  • 选择 offer 的会考虑哪些因素。
  • 这里踩坑了,我说部门业务是否核心是我的一个考虑因素,应该要说业务前景而不业务是否核心。
  • 那如果我把你分配到一个不核心的业务去,你会怎么办?不干了吗?
  • 我答了还要考虑氛围、技术沉淀等因素,面试官直接问,也就是如果这些都不好,你会不干吗?
  • 当时懵逼了,应该要立即答有信息把业务从不核心干到核心的,奈何我太嫩了,没答上来,然后面试官就下一个话题了。
  • 既然考虑业务是否核心,为什么不在阿里内部跳呢?
  • 这个也答不来。。。我扯了很多,还提到 "脉脉上说 xxxx" 之类的。
  • 你为什么还会看脉脉这种戾气很重的 app。
  • 其实这里面试官想要的答案是我自己思考出来的,没有受别人影响的答案。
  • 如何判断一个业务是否核心?你是怎么认为我们产品很核心呢?
  • 喜欢 C 端还是 B 端?
  • 为什么喜欢 C 端?
  • 让你选择部门,你会怎么选择?
  • 你觉得你相对别人的优势在哪?
  • 反问。

这里的评价是技术能力 OK,业务理解力偏差。感觉 sp 没戏了。

隔天约 HR 面。

9-5 美团一面 60min

  • 自我介绍。
  • 介绍一下阿里实习经历。
  • 介绍一下 Redis 基本数据类型。
  • 为什么用 skip list 不用红黑树?
  • 主要是范围遍历,其他都是假的。
  • 介绍一下数据库索引工作原理。
  • 深入讲了一下。
  • 缓存池原理。
  • 索引的 redo log 和 undo log。
  • 索引的查询。
  • 索引上的 next key lock。
  • 数据库的隔离级别。
  • 介绍下 https 原理。
  • 介绍下 tcp 三次握手的流程。
  • 向这种问题也是能深入的,同步异步、socket、半连接队列、tcp 泛洪、epoll 通知。
  • 其实这些知识点大家都会,就是没法联想,很多知识都是能串起来的,一定要联想其他知识点去回答(能多拉扯点时间,面试官还会认为你回答的有深度)。
  • 介绍下四次挥手的过程。
  • 智力题:毒药。
  • 算法题:最长上升子序列。
  • 算法题:鸡蛋掉落。

隔天二面邀请。

9-6 字节 HR 面 20min

  • 自我介绍。
  • 介绍下在三家公司的经历。
  • 给你带来了哪些成长。
  • 外面有哪些 offer。
  • 看你项目经历也挺丰富的,你认为还有哪些可以提升的地方。
  • 在学校怎么学习的。
  • 更喜欢做底层业务,还是上层业务。
  • 技术和业务之间的关系。
  • 能来实习吗?
  • 反问。

一周后意向。

9-7 美团二面 50min

  • 自我介绍。
  • 介绍一下字节实习经历。
  • 介绍一下阿里实习经历。
  • 当时的解决方案有产出文档吗?
  • 这里我说阿里的实习生没有文档权限。
  • 然后和面试官聊了了一会天。
  • 看你对 netty 应该比较熟悉,介绍一下 netty 的优缺点。
  • 为什么想来我们部门。
  • 场景题:在一个搜广推的项目里,如果发现自前半个月以来,调用耗时由 500ms -> 700ms,请你分析一下可能的原因。
  • 这个就看临场发挥了,主要从 IO 限制,上下游对接、缓存命中、流量高峰等因素考虑。
  • 智力题:一个圆桌,和对手轮流放硬币,问必胜策略。
  • 算法题:最长有效括号。

隔天三面邀请。

9-11 美团三面 35min

  • 自我介绍。
  • 挑一个项目介绍一下。
  • 介绍你在阿里的工作。
  • 介绍一下上下游链路。
  • 这里就是要看你是否关注了团队内其他产品以及是否理解团队的整体链路。
  • 要说到面试官弄明白整体链路。
  • 为什么要来我们部门。
  • 你认为你的优势在哪里?
  • 如果同时给你 offer,选择哪里?
  • 你认为程序员必不可缺的品质是什么?
  • 你认为 4 天工作制在中国行得通吗?
  • 如何看待我们部门的发展前景。
  • 反问。

当天约 HR 面。

9-12 美团 HR 面 30min

大部分都是聊部门发展,这里就不暴露部门了,略了。

隔天早晨意向。


最后给大家分享一份2023年字节跳动Java面试参考手册(第三期),这份字节Java面试参考手册总共有210页,并包含十二部分的内容:Java基础、集合类Set、锁volatile synchronized Lock ReentrantLock AQS CAS、Java多线程、Java内存模型和垃圾回收、JUC包、设计模式、数据结构、数据库、网络、操作系统。

因为该Java面试手册包含的内容实在是太多了,这里就不给大家过多的介绍了,只简单截图了一下目录,每个章节都有更加细化的内容。

爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!_第1张图片

爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!_第2张图片

爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!_第3张图片

爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!_第4张图片

爆肝分享24届Java后端六个大厂秋招面经+字节Java面试手册!_第5张图片

2023年字节跳动Java面试参考手册(第三期),
注:篇幅有限,资料已整理成文档,有需要的小伙伴可以
查看下方名片↓↓↓(限粉丝)

你可能感兴趣的:(笔记,java,面试,开发语言,程序人生,程序员,大数据,职场和发展)