面灵AI

字节面经-字节跳动后端开发岗面经-04

时间
2026-08
来源
牛客网

《面试题目》

  1. 主要拷打项目设计和相关场景题,没怎么问实习,八股问了一点点,没有手撕环节,不知道能不能过
  2. 手撕:给出两个二叉树A,B,判断B是否是A的子结构,规定空节点不是任何树的子结构
  3. 介绍一下实习以及项目经历当中你觉得比较有含金量的部分
  4. 知识库文档更新怎么办?
  5. http和https的区别,为什么要前面是非对称加密,后面又是对称加密了?
  6. 如何解决跨服务调用的不一致问题?
  7. 介绍一下这个项目
  8. 说一下用户登录的流程,如何进行校验
  9. HashMap 底层数据结构 / 怎么扩容?
  10. 快手追问:哈希表遍历是有序还是随机?
  11. HashMap 为什么线程不安全?
  12. ArrayList 和 LinkedList 区别?
  13. 在实习项目中,有用 AI 辅助 coding 吗?
  14. 无锁队列的实现原理是什么?
  15. 锁的种类有哪些?各自的使用场景?
  16. TCP 保证可靠传输的机制有哪些?
  17. 能讲一下 TCP 连接的状态机流转过程吗?
  18. 进程和线程的区别是什么?
  19. 早期没有线程只有进程时是怎样进行任务调度的?
  20. JDK21 有哪些更新?
  21. volatile 有什么特性?
  22. volatile 可以保证原子性吗?
  23. 数据一致性怎么保证的?
  24. 乐观锁和悲观锁的区别?
  25. aop底层原理?
  26. 如何解决redis大key和热key的问题?
  27. spring框架中bean如何初始化的?
  28. spring怎么解决bean循环依赖的问题?
  29. http请求从浏览器开始到后端服务器的过程?
  30. Redis里常用的数据结构有哪些?
  31. 解释一下跳表是什么?
  32. Redis常用的淘汰策略有哪些?
  33. 使用缓存的时候要注意避免哪些极端情况?
  34. 一个进程在执行fork操作的时候,子进程会继承父进程的什么信息?
  35. 你这个AI工作流编排平台是怎么做的?
  36. 你能投屏展示一下吗?
  37. DSL是怎么设计的?
  38. 节点都有哪些分类呢?
  39. 那你能简单介绍一个你搭的一个工作流。比如说你能举一个例子,你用这个工作流,你搭建了一个实际的流程是什么样的吗?
  40. 那这个TTS节点是怎么实现的?
  41. 大模型的输出是文本还是直接是语音?
  42. 这里有两个动作:Redis操作和MQ发送。MQ发送的是超过实际库存的临时库存吗?
  43. 你刚才的方案优化的是缓存穿透吗?
  44. 听起来是一个仿小红书的网站。你觉得里面主要的难点是哪里?
  45. 具体怎么做的呢?
  46. 一个是点赞数到达1000,另一个是时间限制1秒,对吧?
  47. 如果面向用户量很大的APP,除了高并发写,还有其他问题,比如热点数据。如果有一条笔记爆火了怎么办?
  48. 服务器转发一般有什么转发算法?
  49. Redis和Caffeine两级缓存的数据一致性怎么保证?
  50. 可以挑一个最近觉得挑战比较大的项目展开介绍一下吗?
  51. Agent内部具体的实现可以再详细介绍一下吗?
  52. MCP是把自然语言转成预置查询类的工具吗?
  53. 操作内部平台时,工具会去操作吗?
  54. 系统测试完成后,准确率怎么评估?
  55. 用20%数据作为测试集,是模型跑case后人工评判准确率吗?
  56. 如何对答案进行轨迹级评分?
  57. 变量什么时候在栈里,什么时候在堆里?
  58. 你刚才提到了DNS,也提到了HTTP需要先进行TCP三次握手,那DNS需要三次握手吗?
  59. 对于二维数组的遍历,两种写法哪种性能更好?
  60. 你刚才说第一种写法(先按行遍历)更好,是在读的情况下,那写入呢?
  61. 介绍3种你熟悉的排序算法?
  62. ThreadLocal原理,说一下内存泄漏的情况以及如何避免。
  63. 系统设计:设计一个秒杀系统,流量估算,Redis方案,数据库怎么处理超卖。

《参考解析》

  1. 介绍项目时应说明背景、个人分工、遇到的技术难点及解决方案,并量化收益(性能提升、成本下降等),便于面试官追问细节。
  2. 算法题先明确边界条件与不变量,再选择合适的数据结构;双指针、哈希表、递归/迭代是常见工具,目标是把复杂度控制在线性或对数级别。
  3. 这类问题建议结合自己的项目经历和岗位要求准备具体案例,突出思考过程而非死记结论,面试官更看重解决问题的逻辑。
  4. 进程是资源分配的基本单位,线程是CPU调度的基本单位,协程是用户态的轻量级调度单位,切换成本远低于线程,但需要语言/运行时支持。
  5. CAS通过比较并交换实现无锁更新,失败后需要重试;库存扣减等高竞争场景可以引入版本号或分段计数减少冲突概率,避免忙等消耗过多CPU。
  6. 回答AI相关问题时应结合具体项目说明如何设计Prompt、评估效果以及处理边界情况(如幻觉、超时),并展示对模型能力边界的清晰认知。