面试真题讲解
逐题讲清解题思路、关键实现与常见追问。
前端面试:如何用 CSS Anchor Positioning 实现可靠浮层?
用 CSS Anchor Positioning 构建提示、菜单和弹出层,处理视口溢出、浏览器降级、滚动容器、焦点管理与弹窗语义。
Linux 面试:如何诊断 Core Dump 并控制敏感数据风险?
从崩溃证据、systemd-coredump、符号化和复现路径定位故障,同时设计容量、权限、保留期与个人数据保护,避免把排障凭证变成泄露源。
数据工程面试:如何设计可验证的数据删除流水线?
设计贯穿原始事件、湖仓表、派生指标、缓存与备份的数据删除请求,说明删除范围、重放隔离、物理清理、审计和完成证明。
行为面试:讲一次你把争论转成可执行决策记录的经历
用真实经历说明你如何澄清目标、记录分歧与证据、确认决策权,并让团队在没有共识时仍可追踪地执行和复盘。
系统设计面试:设计一个可撤销且最小权限的 Signed URL 服务
从签发、权限绑定、过期、撤销和审计推导大文件临时访问服务。
产品经理面试:B2B SaaS 是否应该发布公开产品路线图?
在透明度、客户承诺、灵活迭代与交付可信度之间设计公开路线图策略。
编程面试:实现一个带并发上限和取消能力的异步 map
用固定 worker、结果索引、错误策略和 AbortSignal 解决异步任务调度题。
后端面试:如何设计支持断点续传的 HTTP Range 下载?
从 Range、206、Content-Range 和 If-Range 推导大文件下载的并发、完整性与缓存策略。
通用技术面试:如何设计 HTTP 内容协商并保持缓存变体正确?
从 Accept 系列请求头、Vary 响应头和语言回退策略推导可缓存且不串内容的 HTTP 方案。
前端面试:设计可访问且可恢复的无限滚动列表
在性能、键盘可达性、分页恢复和动态加载之间做出可解释的取舍。
数据工程面试:如何演进事件 Schema 而不打断消费者?
从读写兼容、字段默认值、注册中心和双版本发布出发,设计可验证的事件契约演进流程。
行为面试:讲一次你建立跨时区异步协作规则的经历
用 STAR 说明你如何识别异步协作中的等待与误解,建立清晰的沟通、决策和升级协议,并用交付结果验证改变。
产品经理面试:SaaS 低使用率功能应该下线吗?
用用户任务、替代路径、维护成本与迁移护栏判断功能下线,避免把低使用率直接等同于低价值。
前端面试:设计键盘可访问的 Command Palette
把快捷键、焦点管理、ARIA 语义和异步结果组合成可用且可测试的命令面板。
后端面试:用 RFC 9457 设计统一的 HTTP API 错误响应
把机器可读的错误类型、字段定位和安全信息组合成稳定的 API 错误契约。
行为面试:讲一次你用客户结果挑战表面指标的经历
用事实说明你如何发现指标与客户体验不一致,并推动可验证的改进。
产品经理面试:B2B SaaS 是否应在取消前提供自助数据导出?
在客户控制权、合规边界、留存体验和工程成本之间做出可验证的产品决策。
后端面试:用 ETag 设计防止覆盖的条件更新 API
把 HTTP 条件请求、版本校验和冲突反馈组合成可审计的并发更新协议。
数据工程面试:设计数据新鲜度与质量 SLA
把新鲜度、完整性和有效性转成可监控、可升级、可复盘的质量承诺。
行为面试:讲一个你犯错后真正改变做法的经历
用具体责任、补救结果和流程改进回答‘你犯过什么错误’。
系统设计面试:设计支持预留与回收的多租户配额服务
在高并发下准确管理共享额度,避免超卖并兼顾租户公平性。
通用技术面试:DNS 记录已修改,为什么用户仍解析到旧地址?
用 TTL、缓存层次和权威链路定位 DNS 变更未生效问题。
前端面试:设计断网可用且冲突可解释的表单同步体验
让用户离线继续编辑,恢复连接后可靠同步,并清楚处理冲突与失败状态。
产品经理面试:核心指标下滑时,你会回滚新功能吗?
用影响范围、证据质量和恢复成本做出可执行的发布回滚决策。