云南汇诺校招全栈开发二面
- 轮次
- 二面
- 时间
- 2026-10
- 来源
- 牛客网
《面试题目》
- 自我介绍
- 学校、校长、老师、学生的 AI 赋能系统怎么做?数据库怎么设计?
- 系统的权限怎么设计?
- 学生作业问答 Agent 怎么做?
- 学生考试学情分析怎么设计?
- 老师、校长应该怎么去查学生的考试情况分析,怎么来设计?
- 反问:培养方案是怎样的?
- 怎么看待现在的 AI 时代?
《参考解析》
校园 AI 赋能系统的整体设计:先把「一个系统」拆成角色 × 场景的矩阵再谈架构,不然回答会很散。角色是学生、老师、校长(可扩展到家长与教务),场景按教、学、管三块切:学生侧是答疑、错题整理、学习计划;老师侧是备课辅助、作业批改、班级学情;校长侧是全校数据看板、教学质量评估与预警。技术上典型是「数据层 + 能力层 + 应用层」:数据层接教务系统、考试系统、题库与教材库,做统一的用户与组织主数据;能力层封装 RAG 检索、Agent 编排、模型路由、内容审核与权限校验;应用层按角色出不同的界面与指标。设计时要提前说明约束:数据敏感(未成年人信息与成绩)、需要私有化或可控的模型、以及必须可审计——这些约束会直接决定技术选型,也是面试官最容易追问的点。
数据库设计:核心是把「组织与用户」「教学域」「内容域」分开。组织与用户:学校 → 年级 → 班级 → 用户的层级表,用户表存角色与状态,角色与权限用关联表(多对多);教学域按「课程—班级—授课教师—作业/考试—题目—作答—成绩」建模,成绩要区分原始分与题目级得分,题目级数据是学情分析的基础;内容域存教材章节、知识点树、题库与解析,知识点与题目是多对多,方便按知识点聚合掌握度。几个关键决策要讲:知识点用树还是图(树好维护,图更贴近真实的前置依赖关系);成绩明细是宽表还是长表(长表 (学生, 题目, 得分) 灵活但要控制查询量,配合预聚合表出看板);是否多租户(一套系统服务多所学校时,组织表要带租户标识并做行级隔离)。再补一句数据量与索引:明细表按考试与班级建索引,看板走预聚合或物化视图,避免每次实时扫全量。
权限设计:校园系统的权限是「功能权限 + 数据权限」两件事,很多人只答 RBAC 就停了。功能权限用角色-权限-资源模型(谁能在哪个模块执行哪个动作),数据权限决定「能看到谁的数据」:老师看自己任教班级、班主任看本班、年级主任看本年级、校长看全校,这层需要按组织树 + 任教关系做行级过滤,通常用统一的数据权限表达式(组织范围 + 资源类型 + 条件)在查询层强注入,而不是靠前端藏菜单。进阶可以提 ABAC(按属性与条件判断,比如「考试结束后才可查看成绩」)、字段级脱敏(排名之外的原始分、家长手机号)、以及操作审计(谁在什么时候查了谁的数据)。最后强调三条工程原则:后端是唯一可信边界(前端隐藏不算权限)、默认拒绝(白名单式放行)、以及所有越权尝试都要记录告警。
学生作业问答 Agent:这类 Agent 和通用问答的差别在于「不能直接给答案」。设计上分几步:意图识别先判断是概念提问、解题求助还是闲聊(对应不同的处理策略与话术);检索用 RAG,从教材、讲义、错题本里召回相关片段,按知识点与年级过滤,避免超纲;生成阶段用苏格拉底式引导——先给思路提示、再给关键步骤,学生追问才逐步展开,并强制带引用来源(第几页、哪个知识点);输出前过内容审核与答案校验(数值题用符号计算或工具计算验证结果,防止模型算错)。工程上要处理:多轮上下文与学生在不同题之间切换、公式与图形的渲染、以及记录每一步交互用于效果评估。评测指标建议用「引导后学生能否独立完成同类题」和「答案正确率 / 幻觉率」两条,比单纯看满意度更能说明问题。
考试学情分析的设计:把需求翻成指标再谈实现。指标体系通常分三层:题目层(难度、区分度、正确率、选项分布)、知识点层(每个知识点的得分率、与年级均值的差、掌握度分档)、学生/班级层(总分分布、排名变化、进步退步幅度、薄弱知识点排序)。设计要点:先统一口径(得分率的分母是否含未作答、缺考怎么算、跨校比较怎么标准化),再决定计算方式——知识点掌握度可以用得分率加权,也可以上简单的 IRT 能力估计;错因归类需要题目打标签(概念不清、计算错误、审题失误),这依赖题目元数据的质量。展示层按角色出不同视图:老师看班级薄弱点与要重点讲的题、班主任看学生个体趋势、校长看全校与年级横向对比和预警名单,全部支持下钻到题目与学生明细;性能上把计算放到考后批处理,页面走预聚合结果,避免实时聚合。最后补一句闭环:分析结果要能自动生成练习推荐与讲评建议,否则看板只是展示。