为什么硅谷互联网大厂倒入 AI 也不能获得足够的回报???
这是一名在 FAANG (Facebook (现 Meta Platforms)/Apple/Amazon/Netflix/Google (现 Alphabet))工作了很久的软件工程师梳理的 vibe coding 的开发流程。并且号称提升了 30% 的速度。
但是如果你看他的详细内容,你会发现,在 AI 正式 coding 之前,需要很多人和很多天,在一堆的老爷之间获得共识。。。
一堆程序员,管理者,技术专家,项目经理,产品经理的沟通占据了绝大多数的成本。
等三个月过去了,所有相关的人类老爷都出场表演过价值了,薪水都拿到了之后,可以让 AI 过来真正干活了!!!
而真正干活的 AI 的 token 费用在这些年薪 10 万美金起步的老爷人类面前其实不值一提。整个工程,其实很可能可以在一天之内完成。
并且,任何老爷有意见,可以让他自己输入提示词再用一天搞另外一个版本出来。。。
但是那样,大家怎么摸鱼并且体现价值呢。。。。
xxxxxx
先介绍下背景:我是一名 AI 软件工程师,有十多年的经验,其中一半时间是在 FAANG 度过的。我职业生涯的前半段是做系统工程师,而不是开发,不过我写代码也快 15 年了。
闲话少说,下面我就讲讲我们团队是如何开始用 AI 来写真正的**生产代码 (production code)** 的。
1. 你永远要从一份**技术设计文档**开始。这才是整个工作里最核心的部分。这份文档就像一份提案,你需要说服足够多的利益相关者 (stakeholders),让他们相信你的方案是可行的。只有设计通过了,你才能着手开发系统本身。这份文档里要包含完整的系统架构、与其他系统的集成方案等等。
2. 在投入开发之前,要进行**设计评审 (Design review)**。在这个阶段,团队里的高级工程师 (Senior Engineers) 们会把你的设计文档翻来覆去地“捶打”一遍。这是件好事,我管这叫**“把痛苦前置”**。
3. 如果评审顺利通过,你就可以正式启动开发工作了。最初的几周,大家会花很多时间,为每个开发团队要构建的子系统 (subsystem),撰写更详细的文档。
4. 接着是**待办事项 (Backlog) 的开发和 Sprint 规划 (sprint planning)**。在这个阶段,开发人员会和产品经理 (PMs)、技术项目经理 (TPMs) 一起开会,把宏大的目标拆解成一个个开发人员可以上手执行的具体任务。
5. **软件开发**。终于,我们可以上手敲代码、消灭任务卡了。而这,正是 AI 发挥神力的地方,它简直是我们的**效率倍增器 (force multiplier)**。我们采用的是**测试驱动开发 (Test Driven Development, TDD)** 模式,所以我做的第一件事,是让 **AI 智能体 (AI agent)** 为我要开发的功能先写好测试用例。*只有当测试写好了,我才会开始让 AI 智能体帮我构建具体的功能*。
6. **代码提交评审**。我们的代码在合并到主分支 (main) 之前,需要有两名开发人员的批准。在这个环节,AI 也展现出了巨大的潜力,可以辅助我们进行评审。
7. **在预发布环境 (staging) 测试**。如果测试一切顺利,我们就正式发布到生产环境 (prod) 了。