热门话题
#
Bonk 生态迷因币展现强韧势头
#
有消息称 Pump.fun 计划 40 亿估值发币,引发市场猜测
#
Solana 新代币发射平台 Boop.Fun 风头正劲
来学习+批判一下 FAANG 这样的大厂是怎么「凭感觉编程(Vibe Coding)」的:
“先让足够多的利益相关者点头同意”
“然后搞设计评审”
“接着是长达几周的文档工作”
“再然后是产品经理和项目经理来回拆分任务”
等三个月过去了,终于可以开始 Vibe Coding 了!
---
我们在 FAANG 是这样「凭感觉编程(Vibe Coding)」的
大家好。
我之所以想在这里发个帖子,是因为总看到有人抬杠,说 AI 辅助写的代码根本不能用在真正的产品里。这绝对是瞎说。
先介绍下背景:我是一名 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) 了。
总的来说,从功能提案到最终上线,我们发现整个流程的**速度提升了大约 30%**。这对我们来说是个巨大的进步。
**太长不看 (TL;DR):** 永远从一份扎实的设计文档和架构开始;然后一块一块地去实现它;永远把测试写在前面。

13.31K
热门
排行
收藏