标签题目
工程化相关面试题
用过微前端,实现原理是什么?
这题考察微前端的工程拆分能力。回答要从为什么拆、主子应用如何加载和卸载、隔离怎么做、通信和依赖如何治理讲到边界成本。
ArrayList 和 LinkedList 有什么区别?
ArrayList 和 LinkedList 都实现了 List 接口,但核心差异来自底层结构:ArrayList 基于可扩容数组,擅长随机访问、顺序遍历和末尾追加;LinkedList 基于双向链表,单个节点插入删除本身很快,但定位节点通常需要线性遍历。面试中不能只背数组查询快、链表增删快,还要结合容量扩容、内存占用、CPU 缓存、迭代器删除、fail-fast 和真实业务场景来回答。
一致性哈希的原理和使用场景是什么?
一致性哈希用于解决分布式分片在节点扩缩容时的数据大规模迁移问题。它把 key 和节点映射到同一个哈希环上,key 顺时针寻找第一个节点作为归属节点。相比普通取模,节点变化时只影响相邻区间,但工程上还要处理虚拟节点、热点、权重、复制和故障恢复。
常见设计模式有哪些,分别适合什么场景?
常见设计模式不适合只罗列名称,面试官更关注候选人是否理解模式背后的变化点、解耦方式和落地边界。高质量回答应按创建型、结构型、行为型展开,结合 Spring 和业务代码说明真实使用场景,同时明确模式不是越多越好,核心是让代码在扩展时少改动、在维护时更清晰。
Spring 和 Spring Boot 有什么区别?
Spring 是基础框架和生态体系,核心价值在于 IoC 容器、AOP、事务管理、MVC、数据访问等通用能力;Spring Boot 不是替代 Spring,而是在 Spring 之上提供约定优于配置的应用启动脚手架,通过自动配置、starter 依赖、内嵌服务器、外部化配置和运行监控,降低搭建与运维成本。
熟悉Java的哪些框架?
这类问题不是让候选人背框架名称,而是考察你是否真正理解 Java 后端技术栈如何支撑业务系统。高质量回答应该从“核心开发框架、Web 请求链路、数据访问、微服务治理、RPC 通信、异步消息、缓存与性能、项目落地经验”几个层次展开,体现你不仅会用 Spring Boot 写接口,也理解框架背后的设计思想、运行机制、适用边界和工程实践。
前端监控系统应该如何实现?
前端监控的核心不是简单收集日志,而是建设一套从 SDK 采集、数据清洗、可靠上报、服务端聚合、指标分析、告警响应到问题复盘的闭环体系。它通常覆盖错误监控、性能监控、用户行为埋点、接口质量、业务转化、环境信息和隐私合规。面试回答时要强调:监控目标先于技术实现,数据质量先于数据规模,告警闭环先于报表展示。
模型训练后需要保存哪些参数?
模型训练后的保存内容不只是权重文件,还包括结构、预处理、特征配置、归一化统计、优化器状态、版本信息和评估元数据。
推荐系统中特征生产、样本快照和线上实时特征如何保持一致?
这道题考察推荐系统特征工程化能力。回答要围绕同一套特征定义、同一时间点语义、同一版本治理和同一监控闭环展开,核心是防止训练样本看到线上拿不到的未来信息,或线上实时特征和离线训练特征口径不一致。
NLP 模型接入搜索排序链路时,特征接口和上线评测指标如何设计?
这道题考察 NLP 模型从离线效果走向搜索排序链路的工程化边界。回答要覆盖特征接口、排序接入、延迟降级、日志闭环和离线/在线评测,而不是只介绍某个 NLP 模型。
推荐系统中引入向量索引召回时,在线 serving 链路应该如何改造?
这道题考察的不是向量索引原理,而是把向量召回接入推荐在线 serving 后,链路、模块边界、延迟、降级、索引更新和实验评估应该怎样设计。回答要把它放在召回层讲清楚,并说明 query vector 如何生成、ANN 服务如何调用、候选如何回到后续粗排/精排。
同题还出现在 2 个公司岗位
AI Coding Agent 从用户输入到完成任务的完整链路是什么,如何经过上下文构建、计划、工具调用、代码修改和验证?
这题考的是 AI Coding Agent 的端到端运行时理解:候选人要能把自然语言需求如何变成可验证代码改动讲清楚,包括上下文、计划、工具、修改、测试和回滚闭环。
AI Coding Agent 如何从人工逐步确认切换到自主执行,权限、审批策略、风险护栏和回滚机制应如何设计?
这题考 Agent 自主化的安全工程:不是简单关闭确认按钮,而是用风险分级、最小权限、策略审批、沙箱执行、自动验证和回滚审计来决定哪些动作可以自动做。
同题还出现在 1 个公司岗位