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 开始讲。
追问挺细:
- 你本人具体负责什么
- 最重要的 technical decision 是什么
- 有什么 decision 现在回头看会改
- 遇到过最大的 production issue
- 和 PM / researcher 意见不一致的时候怎么处理
- 有没有为了 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,而是比较喜欢问:
如果这个东西明天真的要上线,你会怎么做?