面灵AI→

水滴 AI 全栈工程师秋招一面面经

轮次
一面
时间
2026-10
来源
牛客网

《面试题目》

  1. 自我介绍。
  2. 进程和线程分别是什么?
  3. 协程了解吗?同一进程内的其他线程会被阻塞吗?线程切换为什么有成本?
  4. 商品库存是 2,10 个人同时抢,会出现什么问题?怎么解决?
  5. 什么是虚拟内存?
  6. TCP 为什么比 UDP 更可靠?
  7. HTTP 和 WebSocket 有什么区别?
  8. 数据库索引一般用什么数据结构?为什么是它?
  9. 什么是 CPU 密集型任务?什么是 IO 密集型任务?
  10. “逻辑复杂”怎么理解?
  11. Agent 是什么?loop 是什么意思?为什么会有 loop?
  12. harness 是什么?它的作用了解吗?
  13. 提示词工程有哪些技术技巧?
  14. 用过 OpenClaw 吗?
  15. 每个月花在 AI 上的费用是多少?
  16. 用过哪些 AI 工具?用来做什么?
  17. AI 工具的开发流程是什么样的?
  18. 有没有学习过一些开发范式?
  19. RAG 怎么融入这个开发流程?
  20. 做过哪些 Agent 相关项目?

《参考解析》

基础题:进程是资源分配单位,线程是 CPU 调度单位,同进程线程共享地址空间;协程是用户态调度,挂起时不会阻塞同进程其他线程,但协程里执行阻塞式系统调用仍会阻塞所在线程。线程切换要保存/恢复寄存器、栈和内核状态,还可能触发缓存失效,所以有成本。库存 2 被 10 人抢会出现超卖,解决方式包括数据库条件更新 stock >= n、乐观锁版本号、Redis 预扣加消息队列异步落库,并给订单加唯一约束兜底。

虚拟内存让每个进程看到独立连续地址空间,通过页表映射物理页,支持换页、隔离和共享;TCP 的可靠性来自序号、确认、重传、校验和、流量控制与拥塞控制;HTTP 是请求-响应短连接语义,WebSocket 握手后是全双工长连接,适合服务端主动推送。MySQL InnoDB 用 B+ 树,因为扇出大、树高低、叶子节点链表适合范围查询,且数据都在叶子层,查询稳定。

Agent 部分:Agent 可以理解为“模型 + 工具 + 记忆 + 循环控制”,loop 是让模型反复执行“思考—调用工具—观察结果”直到完成任务或触发停止条件;没有 loop 就只能单轮问答。harness 是承载模型、工具、上下文和评测的运行框架,负责调度、权限、日志和失败恢复。提示词工程常用角色设定、任务拆解、少样本示例、结构化输出约束、思维链/反思、检索增强和自检;但更关键的是把确定性逻辑交给代码,把判断交给模型。

RAG 融入开发流程可以答:需求/文档入库前做清洗和分块,开发时用检索补上下文,生成后做引用校验和回归评测;上线后收集 badcase 再回流知识库。回答时结合自己做过的项目讲清楚数据流、评测指标和失败兜底,比罗列名词更加分。