字节跳动 · TikTok

后端开发工程师二面面经

完整信息

20 条问法 · 15 道题

本篇目录
面试时间:9.8,时长1h20m 体验:太难了,面试官很有能力语气温柔,能通过项目的挖掘拓展到具体的业务场景但个人能力太差了基本没答上。 1. 请介绍一下你的个人与专业背景(学校、专业、主攻方向) ​ 2. 你什么时候可以入职?能提供多长时间的实习?学校是否支持外出实习?

二、实习经历

3. 你在采购管理模块主要负责哪些开发与维护工作?(发票校验、审批流、QL Express动态表达式) ​ 4. 为什么选用 QL Express 作为动态表达式方案?选型依据是什么? ​ 5. 发票校验模块当前的规则设计现状是怎样的?(四类分类:基础、金额、业务、汇总)

三、系统设计题:发票校验规则架构

6. 核心设计题:如果规则从几十条膨胀到数千甚至上万条,你会怎么重新设计?如何实现规则的快速迭代和可维护,避免修改规则影响已有业务? ​ 7. 如何对发票校验规则进行抽象分类?(参考维度:发票类型、时间周期、金额大小、税率等) ​ 8. 如何抽取业务共性、实现变化点隔离,降低规则间的耦合度?

四、文件存储系统设计

9. PDF合同文件当前是如何存取的?你对底层存储实现了解多少? ​ 10. 设计题:如果让你设计一个文件存储系统,你会怎么做?(候选人提出OSS对象存储方案) ​ 11. 进阶设计题:尝试设计一个高可用的分布式文件存储系统(哈希路由、主从异步备份等),如何保障极端场景下文件不丢失? ​ 12. (面试官评价)你提出的存储架构逻辑零散,未形成完整的多节点状态处理、读写流程、写回执确认的全链路设计——你怎么看?

五、个人项目

13. 介绍一下你独立开发的 CLI 编程 Agent ,核心模块有哪些? ​ 14. 详细描述 Agent Loop 的完整执行流程(上下文压缩→流式模型→工具调用检测→注册校验→参数校验→权限校验→工具执行→大结果处理→日志审计→返回结果) ​ 15. Agent Loop 的循环终止条件有哪些?(无工具调用、超时、token预算耗尽、用户主动结束) ​ 16. 当前是否实现了 checkpoint、resume 及 human-in-the-loop 能力?上下文包含哪些信息? ​ 17. 设计题:如果要支持人工介入(human in the loop)能力,你会怎么设计? ​ 18. ToolCall 的 Java 核心实现逻辑是怎样的?(反射机制、JSON Schema校验、动态实例化、参数注入) ​ 19. 动态传入 JSON 的 Java 方法调用具体如何实现?(类名定位→实例化→方法匹配→参数转换→调用) 20,算法题全排列(命中无大厂了,前面问到太痛苦了后面写算法也紧张😭明明一眼看出来回溯,都刷七八遍了最后还没写出来,结果有重复的😭😭明明是很简单的)
本篇目录
  1. 01
  2. 02
  3. 03
    你在采购管理模块主要负责哪些开发与维护工作?(发票校验、审批流、QL Express动态表达式)
  4. 04
  5. 05
  6. 06
    核心设计题:如果规则从几十条膨胀到数千甚至上万条,你会怎么重新设计?如何实现规则的快速迭代和可维护,避免修改规则影响已有业务?
  7. 07
    如何对发票校验规则进行抽象分类?(参考维度:发票类型、时间周期、金额大小、税率等)
  8. 08
  9. 09
  10. 10
    设计题:如果让你设计一个文件存储系统,你会怎么做?(候选人提出OSS对象存储方案)
  11. 11
    进阶设计题:尝试设计一个高可用的分布式文件存储系统(哈希路由、主从异步备份等),如何保障极端场景下文件不丢失?
  12. 12
    (面试官评价)你提出的存储架构逻辑零散,未形成完整的多节点状态处理、读写流程、写回执确认的全链路设计——你怎么看?
  13. 13
  14. 14
    详细描述 Agent Loop 的完整执行流程(上下文压缩→流式模型→工具调用检测→注册校验→参数校验→权限校验→工具执行→大结果处理→日志审计→返回结果)
  15. 15
    Agent Loop 的循环终止条件有哪些?(无工具调用、超时、token预算耗尽、用户主动结束)
  16. 16
  17. 17
  18. 18
  19. 19
    动态传入 JSON 的 Java 方法调用具体如何实现?(类名定位→实例化→方法匹配→参数转换→调用)
  20. 20

相关公司