应用开发工程师一面面经
完整信息
本篇目录
前言:之前cvte笔试官网上显示好像给我挂了,然后前段时间突然又给我发线下面邀了,但是发的时候已经全部满了,后来又补了一次线上面邀(没想到居然周六周日都能选)。整体面试体感还是不错的,面试官确实挺懂这块的技术的,聊了不少Agent常见的问题
【27届校招面经】应用开发工程师
岗位方向:应用开发工程师
面试形式:线上视频面试 + 在线手撕代码
考察重点:AI Agent 架构设计、LLM 评测体系、工程化落地与可观测性、AI Coding 工作流、数据结构基础
一、自我介绍与项目背景
- 请做一个简单的自我介绍,讲一下自己实习的项目与经历,以及在项目中承担的角色。
二、大模型评测体系设计(项目深挖)
- 简历中提到日志分析准确率从 29% 提升到 68%,最后综合达到 83%,并构建了评测体系。你具体负责了哪个部分?这个评测体系是怎么做设计和落地的?
- 标准测试 Case 包含用户描述、系统日志文件等,还涉及多维度权重和人工复核。这几个部分的标准、评分维度(量表)以及流程是如何设计的?标准 Case 模版是怎么跟业务工程团队对接收集的?
- 目前这个评测集的样本(Top 20 典型 Case)对于真实线上数据问题的覆盖率是怎样的?
- 每个 Case 运行多次后会有随机性,目前是通过什么方式来解决大模型输出随机性影响的?
- 现在大模型迭代更新非常快,如果模型升级后,部分 Case 的返回结果跟之前的预期出现了差异,让你来定位这个问题,你会怎么去做?
三、Agent 工程抽象、并行优化与异常兜底
- 如果现在要构建一个全新的、与当前日志分析完全不同的 Agent 场景(例如客服满意度分析、问答助手或工作流类 Agent),在现有的 Agent 工程中,哪些模块是可以做抽象化和复用的?哪些基础板块不需要动,哪些需要根据业务场景做微调?
- 简历中分析了 Agent 耗时问题,并提到“增加最大 10 并发”(单轮 ReAct 多工具并行分流调用),能展开讲一下当时的背景和具体实现吗?
- 在多工具并行调用运行时,如果对返回结果有顺序性要求,你会怎么处理?
- 在并行调用工具的情况下,如果出现部分结果一半正常返回、一半没返回(调用失败),你们是怎么处理的?
- 如果采用退避重试机制,重试三次后依然失败,最终给到上层的结果会怎么处理?
- 如果不是直接报错挂掉,而是请求超时(服务端一直不返回),你会怎么处理?(面试官追问:如何考虑并发压力达到阈值导致死锁或变慢的情况,以及如何建设工具调用的可观测性与监控?)
- 做完多工具并行拆分后,整个分析流程的耗时优化效果怎么样?如果线上偶发又出现了一次耗时很长(如退化回优化前耗时)的情况,你会怎么去排查定位?
- 在工具拉取数据的阶段,如果单次拉取了超大量级的日志,对于上下文(Context)的管理是怎么做的?如何剔除无效干扰信息并防止模型重复调用无效工具?
四、AI Coding 研发流程与工程规范
- 在真实的日常研发过程中,当你拿到一个需要编程开发的任务时,你使用 AI Coding 的工作模式和完整流程是什么样的?
- AI Coding 过程中 AI 经常会在代码里挖坑(比如漏实现功能、性能问题、内存泄漏、安全性问题或权限问题等),你在这个过程中遇到过哪些问题?发现后是怎么验证和处理的?
- 对于已经踩过的严重问题,有没有采取什么工程措施来避免同类型问题再次出现?如果做全局约束规范(如
.clauderc.md),里面的约束主要分为哪几大类?
五、Agent 架构演进与技术选型思考
- 项目架构从最初的“分类器 + 专家工作流 + 兜底 Agent”,演进为“自主调用 Skills”,再到现在的“双 Agent + 裁决 Agent”。请讲一下这个架构变革的过程、背后的背景,以及当时为什么做这样的技术决策?
- 原架构存在分类边界不清的问题,改成 Skills 自主调用的具体好处在哪里?
- 把原来的“分类器 + 专家工作流”变成 Agent 动态加载 Skills 的模式,它带来的优点和缺点分别是什么?(如准确率与 ReAct 轮次耗时/成本的权衡)
- 如果现在基座大模型的水平变得更强了,或者业务对成本和响应时间有严格要求,你还会继续采用现在的方案吗?
- 如果分类标准本身定义不清楚,换成“双 Agent + 裁决 Agent”就能解决原本分类不准的问题吗?你认为新架构解决的核心痛点到底是系统的拓展性问题,还是长链路推理与证据验证的准确率问题?
六、其他实习经历与前沿技术视野
- 另一段实习中做了基于 n8n 二开的数据中台/工作流项目,里面主要负责了哪些模块的开发?有没有遇到过真实的线上问题定位,能讲一下整个定位过程吗?
- 日常除了工作内容外,还会关注哪些前沿技术方向?
- 在关注前沿模型和开源 Agent 项目(如 Hermes 等)时,有没有去学习了解它们的设计原理(如自动沉淀 Skill、记忆机制),并尝试应用到自己的实际项目中?为什么某些机制适合个人通用 Agent,却不适合直接照搬到垂直业务 Agent 中?
七、手撕代码(15 分钟在线编程)
- 编程题:有序链表去重,保留一个重复元素(同 LeetCode 83. 删除排序链表中的重复元素,考察单指针遍历与链表节点操作)。
- Follow-up 追问:如果题目要求调整为“只要是重复出现过的元素全部删除,一个都不保留”(同 LeetCode 82. 删除排序链表中的重复元素 II),在原有思路上需要做怎样的调整(如引入虚拟头节点 Dummy Node 与前驱指针)?
八、反问环节
- 你有什么其他想要了解的部分吗?
本篇目录
当前问题0128
- 01
请做一个简单的自我介绍,讲一下自己实习的项目与经历,以及在项目中承担的角色。
- 02
简历中提到日志分析准确率从 29% 提升到 68%,最后综合达到 83%,并构建了评测体系。你具体负责了哪个部分?这个评测体系是怎么做设计和落地的?
- 03
标准测试 Case 包含用户描述、系统日志文件等,还涉及多维度权重和人工复核。这几个部分的标准、评分维度(量表)以及流程是如何设计的?标准 Case 模版是怎么跟业务工程团队对接收集的?
- 04
目前这个评测集的样本(Top 20 典型 Case)对于真实线上数据问题的覆盖率是怎样的?
- 05
每个 Case 运行多次后会有随机性,目前是通过什么方式来解决大模型输出随机性影响的?
- 06
现在大模型迭代更新非常快,如果模型升级后,部分 Case 的返回结果跟之前的预期出现了差异,让你来定位这个问题,你会怎么去做?
- 07
如果现在要构建一个全新的、与当前日志分析完全不同的 Agent 场景(例如客服满意度分析、问答助手或工作流类 Agent),在现有的 Agent 工程中,哪些模块是可以做抽象化和复用的?哪些基础板块不需要动,哪些需要根据业务场景做微调?
- 08
简历中分析了 Agent 耗时问题,并提到“增加最大 10 并发”(单轮 ReAct 多工具并行分流调用),能展开讲一下当时的背景和具体实现吗?
- 09
在多工具并行调用运行时,如果对返回结果有顺序性要求,你会怎么处理?
- 10
在并行调用工具的情况下,如果出现部分结果一半正常返回、一半没返回(调用失败),你们是怎么处理的?
- 11
如果采用退避重试机制,重试三次后依然失败,最终给到上层的结果会怎么处理?
- 12
如果不是直接报错挂掉,而是请求超时(服务端一直不返回),你会怎么处理?(面试官追问:如何考虑并发压力达到阈值导致死锁或变慢的情况,以及如何建设工具调用的可观测性与监控?)
- 13
做完多工具并行拆分后,整个分析流程的耗时优化效果怎么样?如果线上偶发又出现了一次耗时很长(如退化回优化前耗时)的情况,你会怎么去排查定位?
- 14
在工具拉取数据的阶段,如果单次拉取了超大量级的日志,对于上下文(Context)的管理是怎么做的?如何剔除无效干扰信息并防止模型重复调用无效工具?
- 15
在真实的日常研发过程中,当你拿到一个需要编程开发的任务时,你使用 AI Coding 的工作模式和完整流程是什么样的?
- 16
AI Coding 过程中 AI 经常会在代码里挖坑(比如漏实现功能、性能问题、内存泄漏、安全性问题或权限问题等),你在这个过程中遇到过哪些问题?发现后是怎么验证和处理的?
- 17
对于已经踩过的严重问题,有没有采取什么工程措施来避免同类型问题再次出现?如果做全局约束规范(如 `.clauderc.md`),里面的约束主要分为哪几大类?
- 18
对于已经踩过的严重问题,有没有采取什么工程措施来避免同类型问题再次出现?如果做全局约束规范(如 `.clauderc.md`),里面的约束主要分为哪几大类?
- 19
项目架构从最初的“分类器 + 专家工作流 + 兜底 Agent”,演进为“自主调用 Skills”,再到现在的“双 Agent + 裁决 Agent”。请讲一下这个架构变革的过程、背后的背景,以及当时为什么做这样的技术决策?
- 20
原架构存在分类边界不清的问题,改成 Skills 自主调用的具体好处在哪里?
- 21
把原来的“分类器 + 专家工作流”变成 Agent 动态加载 Skills 的模式,它带来的优点和缺点分别是什么?(如准确率与 ReAct 轮次耗时/成本的权衡)
- 22
如果现在基座大模型的水平变得更强了,或者业务对成本和响应时间有严格要求,你还会继续采用现在的方案吗?
- 23
如果分类标准本身定义不清楚,换成“双 Agent + 裁决 Agent”就能解决原本分类不准的问题吗?你认为新架构解决的核心痛点到底是系统的拓展性问题,还是长链路推理与证据验证的准确率问题?
- 24
另一段实习中做了基于 n8n 二开的数据中台/工作流项目,里面主要负责了哪些模块的开发?有没有遇到过真实的线上问题定位,能讲一下整个定位过程吗?
- 25
日常除了工作内容外,还会关注哪些前沿技术方向?
- 26
在关注前沿模型和开源 Agent 项目(如 Hermes 等)时,有没有去学习了解它们的设计原理(如自动沉淀 Skill、记忆机制),并尝试应用到自己的实际项目中?为什么某些机制适合个人通用 Agent,却不适合直接照搬到垂直业务 Agent 中?
- 27
**编程题**:有序链表去重,保留一个重复元素(同 LeetCode 83. 删除排序链表中的重复元素,考察单指针遍历与链表节点操作)。
- 28
**Follow-up 追问**:如果题目要求调整为“只要是重复出现过的元素全部删除,一个都不保留”(同 LeetCode 82. 删除排序链表中的重复元素 II),在原有思路上需要做怎样的调整(如引入虚拟头节点 Dummy Node 与前驱指针)?
