面试真题讲解
逐题讲清解题思路、关键实现与常见追问。
后端面试:如何用 PostgreSQL 18 casefold 做 Unicode 不区分大小写匹配?
从 PostgreSQL 18 官方语义出发,设计 Unicode case folding 的索引、唯一性、迁移与验证方案。
数据工程面试:如何评估 Snowflake CUSTOM_INCREMENTAL 动态表?
从官方刷新语义出发,设计 Snowflake 自定义增量动态表的状态、幂等、回退与监控方案。
Java 25 Scoped Values:面试如何比较 ThreadLocal 与结构化作用域?
基于 JEP 506 和 Java SE 25 API,解释 ScopedValue 的不可变共享、where/run 生命周期、继承语义与 ThreadLocal 的取舍。
OpenFeature 评价上下文与 Hooks:面试如何守住 Feature Flag 边界?
基于 OpenFeature 规范解释 evaluation context、typed flag evaluation、provider 与 hooks 的职责,回答如何避免把业务授权、配置同步和观测副作用混在一起。
系统设计:如何设计支持 Trace 关联的 OpenTelemetry 日志管道?
从 OpenTelemetry Logs Data Model 和 OTLP 出发,设计多租户日志采集、资源属性、TraceId 关联、背压、采样、脱敏与可靠投递。
Kafka Tiered Storage:面试如何设计本地与远端保留策略?
围绕 Kafka KIP-405,解释本地层、远端层、分区级开关、保留边界、读取延迟与远端清理责任,回答如何在成本和可恢复性之间取舍。
C++26 结构化绑定 pack:面试如何解释展开范围与模板约束?
围绕 C++26 structured binding pack,说明省略号位置、绑定数量、空 pack、tuple 协议和编译期展开边界,避免把它误说成函数参数包。
HTTP 1xx 中间响应与 102 Processing:面试如何判断协议边界?
从 RFC 9110 的中间响应模型和 RFC 2518 的历史背景出发,回答 102 Processing 能解决什么、不能替代什么,以及如何避免把进度通知误当成最终响应。
系统设计面试:如何把 Kubernetes DRA 设备元数据安全暴露给容器?
围绕 Kubernetes v1.36 DRA device metadata,设计驱动、kubelet、挂载路径、版本和故障处理。
前端面试:WebAuthn largeBlob 能否替代服务端用户状态?
基于 WebAuthn Level 3 规范,分析 largeBlob 的读写流程、容量限制、兼容性与安全边界。
数据工程面试:如何评估 BigQuery continuous queries?
从官方限制出发,设计 BigQuery 持续查询的数据流、权限、成本与监控方案。
后端面试:HTTP 226 IM Used 何时适合增量响应?
从 RFC 3229 出发,说明 HTTP 226 的协商、基准版本、缓存一致性与安全回退。
通用面試:HTTP 208 Already Reported 何時使用,如何避免誤用?
從 WebDAV binding、207 Multi-Status 和 Depth infinity 出發,說明 208 的邊界、客戶端處理和 508 對比。
Kubernetes DRA 面试题:如何设计可消费容量的共享设备调度?
从 Dynamic Resource Allocation 的 ResourceClaim、DeviceClass 与容量策略出发,设计跨命名空间共享 GPU 或网络设备的调度、隔离、失败处理和灰度方案。
前端面試:如何用 CSS anchor-scope 隔離重複元件的錨點?
從 anchor-name、position-anchor 與 anchor-scope 的查找規則出發,設計可回退的重複元件定位。
Rust 面試:如何把使用 gen 識別字的 crate 遷移到 Rust 2024?
從 edition 差異、keyword_idents_2024 lint 與 raw identifier 出發,設計可回滾的 Rust 2024 遷移。
数据工程面试:如何用 Avro Parsing Canonical Form 管理 schema 指纹?
从 Avro 规范化、schema resolution 与 Rabin 指纹出发,设计兼容检查、缓存协商和碰撞防护。
数据工程面试:如何设计 Parquet Modular Encryption 的密钥与读取边界?
从 Parquet footer、列块与页面的模块化加密出发,设计密钥管理、谓词下推、旧读者兼容和轮换恢复。
编程面试:C++26 参数包索引如何工作,何时应做编译器降级?
用 C++26 pack indexing 读取类型包与表达式包,解释常量表达式索引、特性宏、边界错误和兼容实现。
通用面试:如何用 Alt-Svc 平滑迁移到 HTTP/3?
从 RFC 7838 的替代服务宣告出发,设计 Alt-Svc 缓存、证书校验、回退、失效与 HTTPS DNS 协同。
后端面试:如何用 HTTP Prefer 协商响应,而不破坏幂等与缓存?
围绕 RFC 7240 的 Prefer 与 Preference-Applied,设计最小响应、异步等待、缓存变体和客户端降级契约。
CSS alignment-baseline 面试题:如何处理多脚本与 SVG 的基线对齐?
从 alignment-baseline、vertical-align 与基线集合的关系出发,设计覆盖 Flex、Grid、SVG 和多语言文字的稳健对齐方案。
通用面试:HTTP 510 Not Extended 代表什么,现代 API 该不该使用?
从 RFC 2774 的扩展声明与强制扩展请求出发,区分 510、501 和 400,并设计兼容、观测与降级边界。
数据工程面试:Iceberg v3 的 Variant 何时优于 JSON 字符串?
从 Iceberg v3 的半结构化 Variant 语义出发,判断何时采用 Variant、何时拆成结构化列,并设计演进、查询性能和跨引擎兼容方案。