一、AI 编程助手入职第一天
王姐说到做到,云间书店技术部采购了 AI 编程助手。入职第一天,小陈就玩疯了:
# 小陈:AI 帮我写个库存预警函数
# 输入:库存数据;输出:低于阈值自动提醒补货
def stock_alert(inventory, threshold=10):
"""对库存低于阈值的商品生成补货提醒。"""
low = [(item["name"], item["stock"])
for item in inventory
if item["stock"] < threshold]
return low
"师傅!AI 三秒写完了!我原来要写半小时!"小陈兴奋地喊,"照这个速度,咱们一个月能做完半年的活!"
老周站在旁边,看着小陈面前的屏幕,说了句意味深长的话:"小陈,你听说过'AI 幻觉'吗?"
"AI 会一本正经地胡说八道。它写的代码,语法全对、看着合理,但可能藏着逻辑错误、安全漏洞、甚至根本不存在的函数调用。AI 写代码,就像雇了一个特别勤快但偶尔会说谎的新人。 这一章,我们讲的就是:AI 时代,软件工程管理怎么变。"
二、AI 在软件工程里的四个角色
老周在白板上画出 AI 在开发流程中的位置:
需求 ──▶ 编码 ──▶ 评审 ──▶ 测试 ──▶ 发布 ──▶ 运维
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
AI辅助编码 AI代码评审 AI测试生成 AI发布辅助 AI运维排障
(Copilot) (自动扫描) (自动用例) (自动发布) (日志分析)
"AI 不是替代某一个岗位,而是渗透到整个流程的每一个环节。但每个环节的用法和风险完全不同。"
2.1 AI 辅助编码(Copilot 类):最快的提效,最大的风险
"这是现在最成熟的场景。AI 补全代码、生成样板、写单元测试、解释老代码……"
AI 辅助编码的正确姿势:
✅ 用:生成样板代码、写测试、解释看不懂的代码、翻译旧代码
✅ 用:作为"第一稿"——你审阅后修改,比自己从零写快
❌ 别:不审阅直接提交(幻觉风险)
❌ 别:把核心业务逻辑全交给 AI(你根本不知道它为什么这么写)
❌ 别:在代码里留 AI 生成的密钥/凭据(它可能"编"一个)
"铁律:AI 写的代码,必须有人负责。 谁提交的,谁负责——这条和人工代码完全一样。"
2.2 AI 代码评审:机器当"第二双眼睛"
"还记得第四章的代码评审吗?现在 AI 可以当评审员:"
AI 评审能发现:
- 明显的 bug(空指针、越界、拼写错误)
- 安全漏洞(SQL 注入、硬编码密钥)
- 常见反模式(重复代码、过度嵌套)
- 缺失的测试
AI 评审发现不了:
- 业务逻辑对不对(它不懂云间书店的满减规则)
- 架构边界对不对(它不知道哪个模块该不该 import 谁)
- "这段代码是否真的满足需求"
"所以正确的姿势:AI 评审做第一轮(快速扫雷),人工评审做第二轮(判断业务与架构)。 别让 AI 评审完全替代人工——它只能抓'技术病',抓不了'业务病'。"
2.3 AI 测试生成:把"不写测试"的人补上
"小陈,你还记得咱们测试覆盖率目标 80% 吧?"老周问,"有了 AI,这个目标好实现多了:"
# AI 生成的单元测试(人审阅后使用)
def test_stock_alert():
inv = [{"name": "三体", "stock": 3},
{"name": "活着", "stock": 15}]
result = stock_alert(inv, threshold=10)
assert result == [("三体", 3)] # 只有三体低于阈值
def test_stock_alert_边界值():
assert stock_alert([{"name": "A", "stock": 10}], 10) == [] # 等于阈值不报警
"AI 特别擅长生成边界测试(等于阈值、空列表、极端值)——这些恰恰是人最容易漏的。但记住:AI 生成的测试,人也要审,不然测试可能是'错的测试',让你误以为代码没问题。"
三、平台工程:AI 时代的地基
"除了 AI 直接干活,还有一个更底层的趋势:平台工程(Platform Engineering)。"老周说,"它的目标,是把整个开发环境变成'自助服务'——开发者想要一个测试环境?点一下,自助创建;想要数据库?点一下,自动配好。"
平台工程 vs 传统运维:
传统:开发者提工单 → 运维手动配环境(慢,运维是瓶颈)
平台:开发者自助申请 → 平台自动创建环境(快,标准化)
云间书店的"开发平台"(理想状态):
├── 一键创建开发环境(代码+数据库+依赖全自动)
├── 一键部署到任意环境(测试/预发布/生产)
├── 自助申请数据库/缓存(配额内自动开通)
└── 统一监控与日志(所有人能看到系统状态)
"平台工程的精神:把'重复的、标准化的'工作,从人手里拿走,交给自动化平台。 AI 时代尤其重要——AI 写得快,部署得更快,没有好平台,AI 产出再多也上不了线。"
四、AI 时代的团队角色变化
"最后,聊聊最让人焦虑的问题:AI 会替代程序员吗?"老周问。
小陈犹豫了一下:"会……吗?"
老周没直接回答,而是画了一张图:
传统程序员(写代码的人):
需求 ──▶ 想清楚 ──▶ 写代码 ──▶ 测试 ──▶ 上线
AI 时代的软件工程师(对结果负责的人):
需求 ──▶ 想清楚 ──▶ 让 AI 写 ──▶ 审 AI 的代码 ──▶ 测试 ──▶ 上线
▲ ▲ ▲
(更值钱了) (省下来的时间) (新技能:AI 审阅)
真正的变化:
- "怎么写代码"的权重下降(AI 会了)
- "要什么"和"对不对"的权重上升(AI 不会,还是人判断)
- 需求分析、架构设计、代码评审、质量把关 → 人的核心价值
"所以小陈,答案很明确:AI 替代的不是'程序员',是'只会写代码的程序员'。 你去年学的那些底层知识、这十个月学的管理知识,恰恰是 AI 时代最值钱的部分——因为 AI 会写代码,但不知道为什么要写这段代码、这段代码对不对、怎么让一群人协作写出对的代码。"
"软件工程管理的核心,从来没有变过:需求对齐、质量防线、协作节奏、风险控制。 AI 只是把'写代码'这个环节变快了,其他环节——人的判断、人的协作、人的责任——反而更重要了。"
五、AI 时代的管理新规(云间书店版)
老周把 AI 引入后的团队规范更新了一遍:
云间书店技术部 · AI 使用规范(V1.0)
1. AI 生成的代码,必须经人工评审后才能合并(和人工代码同标准)
2. AI 生成的测试,人必须审阅,禁止"测试也全自动"
3. 核心业务逻辑(支付/库存/折扣),AI 只能写初稿,人必须重写关键路径
4. AI 写出的密钥/凭据/敏感信息,一律视为不可信,重新配置
5. 所有代码提交者(人或 AI)都记录在案,责任到人
6. 每周例会加一项:分享 AI 用得好的场景(互相学习)
"你看,这些规矩,跟我们前面讲的每一章都是同一套逻辑——管人、管协作、管风险。AI 只是团队里新来的'很能干的新人',管理它,用的是同样的方法。"
六、章末:老周的第十二层总结
第十二层:AI 时代的软件工程
├── AI 辅助编码 → 提效最快,幻觉风险最大,必须人工审
├── AI 代码评审 → 机器抓技术病,人抓业务病
├── AI 测试生成 → 擅长边界用例,但测试本身也要审
├── 平台工程 → 环境自助化,让 AI 产出能快速上线
└── 角色进化 → 从"写代码"到"对结果负责",人的判断更值钱
"小陈,你回头看这棵树的十二层——从'为什么需要管理',到'AI 时代的软件工程',每一层都在回答同一个问题:怎么让一群人,稳定、可靠、高效地做出好软件。"
"而所有答案的本质,还是那句话:软件工程的所有管理实践,都是'人类协作 + 防错'的产物。 工具在变,技术在变,AI 也在变——但'人怎么协作、怎么防错'这件事,永远不变。"
"明天,是你出师的日子。王姐说了,让你给全组讲一次'技术部这一年'。"老周笑了,"题目我都给你想好了——《我们踩过的坑》。去把终章准备好。"