视频代码评审:礼貌指出问题,谈出修改方案
点「看一看」,Ryan 和 Dana 就在这里把这一场演一遍;轮到你开口的 5 个地方会停下来,给你看要说的意思和三种说法。
AI角色、对话和声音都由 AI 生成,只用于练习。
这一场在哪里,发生了什么?
周三上午 10 点,西雅图一家做外卖配送软件的公司,团队在视频会上做代码评审
你是这次合并请求(pull request)的评审人。资深工程师 Ryan 改了订单重试逻辑,赶着周五上线;技术负责人 Dana 主持会议,想尽快有结论。你发现重试没有上限、没有间隔,新代码也没有测试。
和谁对话?
- Ryan
- 美国口音。资深工程师,代码作者,自信,赶着周五上线,被挑毛病有点不服气
- Dana
- 美国口音。技术负责人,主持会议,想尽快有结论
你要做到什么?
先肯定整体思路,再说有两点要讨论;指出第 142 行重试没上限、没间隔的风险;接住 Ryan 的反驳,用黑五的例子说明问题,提出最多重试 3 次、间隔 1、2、4 秒;要求至少补一个“连续失败”的单元测试;同意周五照常上线:重试上限今天改,测试周四下班前补,你周四下午再看一遍。
这一场轮到你开口 5 次:
- 先肯定
- 指出问题
- 接住反驳
- 要求测试
- 谈方案
全文:这一场怎么说?
中英对照,不用注册。每一句都能点「听」,录音就是 App 里这一场的录音,只有角色的台词。轮到你的地方,写着你想说的意思、三种说法和值得记住的说法:能说清是短句,先保证对方听懂;自然是同事平时会说的;高密度更紧凑、信息更多。
Morning, everyone. We're here for Ryan's pull request on order retries. I'd like a decision in thirty minutes.
大家早。今天看 Ryan 关于订单重试的合并请求,希望三十分钟内有结论。
听懂:pull request 合并请求(PR) · order retries 订单重试
Morning. Quick summary: when an order can't reach payment, the system now tries again automatically. We're shipping Friday.
早。简单说:订单连不上支付时,系统现在会自动重试。我们周五上线。
听懂:tries again automatically 自动重试 · We're shipping Friday 我们周五上线
You're the reviewer. Want to kick us off?
你是评审人。你先开始?
听懂:reviewer 评审人 · kick us off 开个头
轮到你:先肯定
先肯定整体思路清楚,再说有两个地方想讨论。
你想说的意思:整体思路很清楚,代码也好读。我有两个地方想讨论一下。
- 能说清Sure. The overall idea is clear. I just have two things to discuss.
- 自然Sure. Overall, the approach makes sense and it's easy to follow. I just have two things I'd like to discuss.
- 高密度Sure. Overall, the approach makes sense and the code's easy to follow. There are just two things I'd like to talk through before we merge.
| 值得记住的说法 | 中文 |
|---|---|
| Overall, the approach makes sense | 整体思路是对的评审时先肯定,再提问题 |
| easy to follow | 好读、好理解 |
| two things I'd like to talk through | 有两点想一起过一下talk through 比 discuss 更软 |
Thanks. Okay, go ahead. What's on your mind?
谢谢。好,你说吧,想说什么?
听懂:What's on your mind? 你在想什么/想说什么
轮到你:指出问题
指出第 142 行重试没有次数上限、没有间隔,支付接口超时时可能一秒发几十次请求。
你想说的意思:第一个是第 142 行:重试没有次数上限,也没有间隔。支付接口一超时,可能一秒发几十次请求。
- 能说清First, line 142. The retry has no limit and no wait. If payment times out, we send many requests a second.
- 自然First, on line 142, the retry has no limit and no delay between attempts. If the payment API times out, we could send dozens of requests a second.
- 高密度First one's on line 142: the retry has no cap and no delay between attempts. If the payment API times out, we could end up sending dozens of requests a second.
| 值得记住的说法 | 中文 |
|---|---|
| no delay between attempts | 每次尝试之间没有间隔 |
| we could end up … | 最后可能会……说风险,不说死 |
| dozens of requests a second | 一秒几十次请求a second=每秒 |
Hm. Honestly, we've run this kind of retry for months. It's never caused a problem in production.
嗯。说实话,这种重试我们跑了好几个月,线上从没出过问题。
听懂:retry 重试 · in production 在线上(生产环境)
Fair point. Is this a real risk, or more of a what-if?
有道理。这是真实风险,还是只是假设?
听懂:Fair point 有道理 · a what-if 假设的情况
轮到你:接住反驳
承认平时没事,但举出上个月黑五支付接口超时 20 多分钟的例子,建议最多重试 3 次,间隔 1、2、4 秒。
你想说的意思:平时确实没事,但高峰期就不一样了。上个月黑五,支付接口超时了 20 多分钟。我建议最多重试 3 次,间隔 1 秒、2 秒、4 秒。
- 能说清Most days, yes. Payments timed out for over 20 minutes on Black Friday. I suggest three retries at most. Wait one, two, then four seconds.
- 自然That's true on a normal day. But on Black Friday last month, the payment API timed out for over 20 minutes. I'd suggest three retries at most, waiting one, two, then four seconds.
- 高密度That's true on a normal day, but at peak it's a different story. On Black Friday the payment API timed out for over 20 minutes. I'd suggest capping it at three retries, waiting one, two, then four seconds.
| 值得记住的说法 | 中文 |
|---|---|
| That's true on a normal day | 平时确实是这样先认同对方,再转折 |
| at peak it's a different story | 高峰期就是另一回事了 |
| I'd suggest capping it at … | 我建议上限定在……cap=设上限 |
Okay, peak traffic is a fair concern. Ryan?
好,高峰流量确实值得担心。Ryan?
听懂:peak traffic 高峰流量 · a fair concern 合理的担心
Alright, I hear you. I'll add a limit and a growing wait between tries, the backoff. I can do that today.
好吧,我明白。我加个上限,每次重试之间的等待逐渐变长,也就是退避。今天就能改。
听懂:I hear you 我明白你的意思 · backoff 退避(重试间隔逐渐变长)
Good. Anything else before we wrap up?
好。结束前还有别的吗?
听懂:wrap up 收尾、结束
轮到你:要求测试
指出新的重试逻辑没有单元测试,至少要补一个“连续失败”的测试。
你想说的意思:第二点是测试。新的重试逻辑现在没有单元测试,至少要补一个连续失败的测试。
- 能说清Yes, tests. The new retry code has no unit tests. We need at least one test for failures in a row.
- 自然Yes, my second point is tests. The new retry logic has no unit tests yet. At a minimum, we should add one for failures in a row.
- 高密度Second thing: the new retry logic has no unit test coverage yet. At a minimum, we need a test for back-to-back failures, so we know it actually stops.
| 值得记住的说法 | 中文 |
|---|---|
| unit test coverage | 单元测试覆盖 |
| At a minimum, … | 最起码……提最低要求,语气不强硬 |
| back-to-back failures | 连续失败back-to-back=一个接一个 |
Tests too? Come on, we ship Friday. Best I can do is one test by end of day Thursday.
还要测试?拜托,我们周五上线。我最多能在周四下班前补一个测试。
听懂:Come on 拜托(有点不耐烦) · Best I can do 我最多能做到 · end of day Thursday 周四下班前
Can we still ship Friday with that? What would you be okay with?
这样我们还能周五上线吗?你能接受什么方案?
听懂:be okay with 能接受
轮到你:谈方案
同意周五照常上线:重试上限今天改,测试周四下班前补,你周四下午再看一遍。
你想说的意思:周五上线没问题。重试上限今天改好,测试周四下班前补上,我周四下午再看一遍。
- 能说清Yes, Friday is fine. Fix the retry limit today. Add the test by end of day Thursday. I'll check again Thursday afternoon.
- 自然Friday works for me. If you fix the retry limit today and add the test by end of day Thursday, I'll check it again Thursday afternoon.
- 高密度I'm fine keeping Friday. Let's get the retry limit in today and the test in by end of day Thursday, and I'll do a final pass Thursday afternoon.
| 值得记住的说法 | 中文 |
|---|---|
| I'm fine keeping … | 我同意保持……不变 |
| by end of day Thursday | 周四下班前文字里常写 EOD |
| do a final pass | 最后过一遍评审里常用 |
Okay, that's fair. I'll push the limit first, then get that test in. Ping me if anything's unclear.
好,这样公平。我先提交上限的改动,再把测试补上。有不清楚的就找我。
听懂:push 提交(代码) · Ping me 给我发个消息
Great, Friday stays. You'll give it a last look before release, right? Thanks, both of you.
好,周五照常。上线前你最后再看一遍,对吧?谢谢两位。
听懂:Friday stays 周五照常(不变) · give it a last look 最后看一遍
没听清、卡住时怎么接?
这一场准备的救场的话:没听清、一时想不起词,先用一句接住,再想内容。
| 英文 | 中文 |
|---|---|
| Sorry, could you say that again? | 抱歉,能再说一遍吗 |
| Give me a second to check the code. | 稍等,我看一下代码 |
| Let me share my screen. | 我来共享一下屏幕 |
| Just to make sure we're on the same page, … | 确认一下我们理解一致…… |
在开口前练这一场
读过一遍,再开口说一遍:在开口前打开这一场,Ryan 和 Dana 用各自的口音说话,轮到你时停下来等你开口,不限时间;想不起来,提示先给首字母,再给英文说法,最后才给中文。
免费注册、不用绑卡;免费版每周 2 轮 AI 实时对话和 3 次脚本版练习;做自己的场景、连上自己的 AI 可以免费试用 7 天,试用结束不自动扣费。目前只对身在海外的用户开放,电脑上的 Chrome 体验最好。
还可以练哪些场景?
这类对话的常用说法和常见错误,先看指南:怎么礼貌地表达不同意(英文指南)。
- 技术方案评审:讲清取舍,礼貌说不法国、波兰口音
- 每日站会:说清进展,提出卡点加拿大、尼日利亚口音
- 行业交流会:自我介绍、接话、加联系方式澳大利亚、肯尼亚口音
- 开放办公区:礼貌拒绝临时任务,给出替代方案英国、爱尔兰口音
- 冲刺回顾会:坦白说出问题,提出能落地的改进美国口音
- 学术会议茶歇:自然搭话,问个好问题,留下联系方式德国、美国口音
这页是怎么写的?
- 内容来源
- 开口前 App 里的练习场景「视频代码评审:礼貌指出问题,谈出修改方案」:情境、角色、全文、三种说法和救场的话都是 App 里的原文,录音是 App 里这一场的录音。人名和情节是虚构的。
- AI 的使用
- 角色、对话和声音都由 AI 生成。
- 更新记录
- 2026-11-01 更新。发现错误,写信到 hello@kaikouqian.com。