Harvey Agents 软件工程师面试经验

Harvey Software Engineer、Agents 岗位五轮面经,记录文档分块合并、RAG、长时运行 Research Agent、项目深挖与行为面。

Cowinx · 面经 · 更新于 · 3 分钟阅读

English
分享

Harvey 的 Software Engineer, Agents 面试共五轮。题目不太像纯刷 LeetCode,很多 Coding 和 System Design 都会落到 document、RAG、agent 与真实 production constraint 上,整体很看重 practical engineering 和 ownership。

面经 | Agents / SWE | 🔥🔥🔥 | Harvey

2026(7–8 月)· Software Engineer, Agents · 网上海投 · Onsite。

整体 5 轮,感觉 Harvey 的题不像纯刷 LC,很多题会套到 document / RAG / agent 场景里面。

来源 · 候选人提供的第一手中文面经;英文版为编辑翻译

这篇文章记录的是一位候选人的面试经历,不代表 Harvey 固定或官方的招聘流程。团队、面试官、题目和 follow-up 都可能变化。

Round 1:Recruiter / HM Chat

主要聊 resume 和之前做过的项目:

  • Why Harvey / why legal AI
  • 为什么想做 agent
  • 之前有没有把 LLM feature 真正推到 production
  • 讲一个自己 ownership 比较大的项目
  • 如果 model quality 和 latency 只能优先一个,之前是怎么 trade-off 的

后面问了一些工作方式,感觉比较看重能不能在 ambiguity 比较大的情况下自己推进。

Round 2:Coding — Document Chunk Merge

给很多 document chunks,每个 chunk 有:

document_id / start / end / text

不同 retrieval request 返回的 chunk 可能 overlap。

第一问,把 overlap 的 chunk merge 掉。

第二问,相同 text 可能来自不同 document,需要保留 source attribution。

第三问,数据量很大,不能一次全放 memory,怎么改成 streaming。

第四问,如果 chunk 会不断到达,要求能够实时返回当前 merged result。

整体不算特别难,但 interviewer 会一直追 complexity、edge cases 和 code structure。

Round 3:AI / Practical Coding — RAG Pipeline

给了一个简化版的 legal document QA pipeline,有一些 function 已经写好,需要补完整。

大概流程:

query -> retrieve -> rerank -> build context -> LLM

第一问,实现 top-k retrieval 和 context construction。

第二问,context 超过 token limit 怎么处理。

第三问,有些 retrieved docs 互相矛盾,希望回答能够引用 source。

第四问,发现 retrieval recall 很高,但最终 answer accuracy 反而下降,怎么 debug。

最后聊了一下:

  • chunk size
  • reranking
  • context window
  • hallucination
  • eval dataset

感觉这轮比传统 ML theory 更偏实际工程。

Round 4:System Design — Long-running Research Agent

设计一个 agent,用户上传几百份 legal documents,然后给一个比较复杂的问题:

找出所有和某项条款相关的内容,比较不同文件中的冲突,并生成带 citation 的 report。

要求 agent 可能跑几分钟甚至几十分钟。

主要讨论:

  • document ingestion / indexing
  • retrieval
  • planner / tool calling
  • context management
  • intermediate state 怎么保存
  • task queue
  • retry / idempotency
  • model timeout
  • partial result
  • citation 怎么保证正确
  • 用户中途修改 query 怎么处理

后面一直追一个问题:

如果 agent 已经执行了 20 个 steps,第 21 个 step 失败,是重新跑还是从 checkpoint 恢复?

最后还聊了怎么做 eval,怎么判断一次 agent run 到底是不是“正确”。

Round 5:Project Deep Dive + BQ

让我选一个最复杂的项目,从 architecture 开始讲。

追问挺细:

  1. 你本人具体负责什么
  2. 最重要的 technical decision 是什么
  3. 有什么 decision 现在回头看会改
  4. 遇到过最大的 production issue
  5. 和 PM / researcher 意见不一致的时候怎么处理
  6. 有没有为了 ship faster 主动砍掉过 feature

BQ

  • Why Harvey?
  • Why agents instead of traditional SaaS?
  • Tell me about a time you moved forward with incomplete information.
  • Tell me about a disagreement with a strong engineer.
  • 讲一个你觉得 technically correct,但最后 product 上没有采用的方案。

整体感受

整体感觉 Harvey 很看重 practical engineering + ownership

Coding 本身没有特别离谱,但是会不停加 constraint;AI 相关也不是考背 Transformer,而是比较喜欢问:

如果这个东西明天真的要上线,你会怎么做?

相关面经