谷歌工程师每年代码量超过 1000 行 | AI生成和翻译
问题:许多 Google 软件工程师每年投入生产环境的代码是否少于 1000 行?
回答:
不,许多 Google 软件工程师每年投入生产环境的代码少于 1000 行这一说法是错误的观念,尽管它源于业界对生产力指标的广泛讨论。代码行数(LOC)被广泛认为是衡量工程产出的有缺陷的指标,因为它忽略了代码质量、重构(这可以减少净 LOC)、测试、设计、调试和协作等因素——尤其是在像 Google 这样复杂的环境中,工程师们在庞大的共享代码库上工作,这些代码库在搜索、地图和 Gmail 等服务中超过 20 亿行。
行业基准表明,专业的开发人员通常每天产生 10-20 行净 LOC(或每年 2,000–5,000 行)贡献到生产环境,这考虑了非编码任务和修订。这与 Fred Brooks 的《人月神话》(The Mythical Man-Month)等来源的历史数据(引用每年约 600–800 条调试指令)和 COCOMO 模型(每天 6–13 LOC)相符。具体来说,在 Google,约 25,000–60,000 名开发人员每周修改约 1500 万行 LOC,这意味着平均每位工程师每年约有 600–1,500 行的活跃更改。来自 Google 校友和类似大规模项目(例如,Windows NT 代码库)的轶事报告显示,每位工程师的净增加量约为每天 12 LOC(每年约 3,000 行),远远超过 1,000 行。
Google 的 monorepo(几乎所有代码都在一个仓库中)和 Piper 等工具可以实现频繁、小的提交(每天 45,000 次),但生产代码在部署前要经过严格的同行评审、测试和自动化。最近的 AI 集成(例如,Gemini 负责编写超过 25% 的代码)加速了样板代码和建议,但人类仍然主导架构、评审和集成——这可能会提高有效产出而不会增加原始 LOC。简而言之,虽然一些工程师在小众角色(例如,重度设计或维护)中可能会低于 1,000 LOC,但这不代表 Google 的“许多”工程师;大多数人都为生产系统做出了更有意义的贡献。
参考文献:
- Quora: Lines of Code per Day at Google
- Skeptics Stack Exchange: 10 LOC per Day Myth
- WIRED: Google’s 2 Billion Lines of Code
- Software Engineering Stack Exchange: LOC Origins
- Stack Overflow: LOC in Large Projects