货拉拉是一家研发规模不小的互联网公司,业务覆盖同城货运、跨城物流、车辆租售、企业物流等场景。和很多公司一样,我们从2023年就开始有人在IDE里偷偷装各种AI代码助手,私底下用得不亦乐乎。但真正把AI Coding推到组织层面,是2024年才认真梳理并动手干起来的事。这中间最大的感受就一句话:个人提效,攒不成组织提效。
这句话看着像废话,但真做起来才会发现,里面全是坑。今天这篇复盘,我想把我们在货拉拉落地AI Coding的完整思路、具体动作、踩过的坑和沉淀下来的规范一次性讲清楚。内容主要面向技术管理者、研发效能团队的负责人,以及真正想把AI Coding从“个人外挂”变成“团队生产力”的一线工程师。
1. 拆解命题:为什么个人提效换不来组织提效
1.1 个人效率和组织效率的错位
先讲个很典型的场景。我们有个后端团队,有个同学特别爱折腾AI工具,一周时间用AI辅助写了原来两周才能写完的接口代码,PR提交出来洋洋洒洒三千行。表面上看,个人产能翻倍了,结果呢?代码评审的同事看到这么大的diff直接头大,用了整整一天才review完;测试同学补边界用例补到崩溃;上线之后还因为一个AI“自作聪明”生成的并发处理逻辑出了线上故障。最后算总账,这个需求的交付周期并没有比平时快多少,反而因为返工消耗了更多协作资源。
这就是“个人提效,攒不成组织提效”最典型的形态。个人用AI把“写代码”这件事变快了,但一个需求从拆分、设计、开发、评审、测试、上线到稳定运行,写代码只是中间一段。组织真正的交付速度,取决于整条链路上最慢的那个环节。当个人产出暴涨,但评审能力和测试能力没有跟着涨,反而会让瓶颈更堵。
所以,我们在货拉拉内部讨论AI Coding落地时,第一个达成的共识就是:不要盯着“AI帮每个人写了几行代码”看,要看“AI有没有让需求交付链路整体变快”。如果答案没有,那AI Coding就还停留在个人玩具的阶段,不具备组织价值。
1.2 货拉拉的研发链路特点与AI Coding切入点
货拉拉的研发链路其实挺复杂的。面向C端乘客/货主的App和小程序要做,面向司机的大屏端和接单工具要做,中间还有调度引擎、智能定价、订单履约、路线规划、风控系统、客服工单系统等一堆后端服务。技术栈以Java和Go为主,前端Vue和React都有,还混着一批历史比较久的PHP和Python服务。系统之间依赖关系复杂,老代码多,文档缺失的情况也比较普遍。
这种背景决定了AI Coding的切入点不能太激进。我们不可能指望AI直接理解复杂的业务规则然后自动重构整个调度系统,那是幻想。我们实际的切入点集中在几类高频且相对标准化的场景:代码补全、单元测试生成、代码解释、MR描述生成、接口文档生成、简单的跨文件批量修改、脚本编写。这些场景的共同特点是:上下文相对封闭,结果可以被快速验证,即使AI出错,破坏面也有限。
说得直白点,在货拉拉这种业务复杂度高的环境下,AI Coding更适合当一个“副驾驶”,而不是“自动驾驶”。副驾驶能帮你提前看到障碍、提醒你检查遗漏、帮你处理一部分固定操作,但方向盘还是主驾握着。我们所有的工具建设和规范制定,都是围绕“副驾驶”这个定位展开的。
2. 货拉拉的AI Coding落地路径:从个人工具到组织平台
2.1 工具选型:商用助手与开源模型的组合策略
既然决定从组织层面推AI Coding,第一步就是工具选型。不能让大家自己想用啥用啥,因为一旦各用各的,数据安全、结果质量、后续的度量分析全都无从谈起。
我们当时对比了市面上主流的商用AI代码助手,也评估了很多开源方案。评估维度主要有五个:代码隐私与安全、内网隔离能力、模型生成的代码质量、成本可控性、以及团队的实际使用体验。
商用助手在生成质量和IDE插件体验上确实有优势,尤其是对Java/Go这种主流语言的补全效果
204



被折叠的 条评论
为什么被折叠?



