news 2026/1/12 1:42:55

在谷歌的14年里学到的21条经验

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在谷歌的14年里学到的21条经验

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/

大约14年前,当我加入谷歌时,我以为这份工作就是写出优秀的代码。某种程度上我没错。但随着时间推移,我渐渐意识到,真正能茁壮成长的工程师,不一定是编程最强的人,而是那些懂得如何在代码之外应对一切的人:人与人之间的关系、团队政治、目标对齐,以及模糊不清的环境。

这些经验是我希望自己更早明白的。有些经验能帮我少走几个月的弯路;有些则花了多年才真正体会到。它们都与具体技术无关——因为技术变化太快,不值得执着。它们讲的是那些反复出现的模式:一个又一个项目,一支又一支团队。

我分享这些,是因为我曾受益于前辈工程师的经验分享。这是我想回馈的一次尝试。

1. 最优秀的工程师,痴迷于解决用户问题。
人很容易沉迷于某项技术,然后到处找机会去应用它。我也犯过这样的错,几乎每个人都犯过。但真正创造最大价值的工程师,是那些从用户问题出发,深刻理解问题本质,并让解决方案从理解中自然浮现出来的人。

对用户的痴迷意味着要花时间在支持单中、与用户交谈、观察用户遇到的困难,并不断追问“为什么”,直到找到问题的根源。真正理解问题的工程师,往往能找到比所有人预期都更简单优雅的解决方案。

相反,那些从解决方案出发的工程师,往往会在寻找“合理化”的过程中,构建出复杂性。

2. “你是对的”很廉价,一起变得正确才是真正的工作。
你可以赢下所有技术争论,却输掉整个项目。我见过聪明绝顶的工程师,因为总是“房间里最聪明的人”,而无形中积累了团队的怨气。这种代价会在后期以“神秘的执行问题”或“奇怪的阻力”形式体现出来。

真正的能力不在于“对”,而在于能否进入讨论以对齐问题、为他人留出空间,并对自己的确定性保持怀疑。

“强烈观点,弱持有”——不是因为缺乏信念,而是因为在不确定性中做出的决策,不该与自我身份绑定。

3. 行动优先。发布它。你可以修改一篇糟糕的文稿,却改不了一张空白页。
追求完美是瘫痪性的。我见过工程师为一个从未实现的架构争论数周。完美的方案很少只靠思考得出——它诞生于与现实的接触。AI在这方面也能提供巨大帮助。

先做,再做对,再做得更好。把丑陋的原型拿给用户看;写下凌乱的设计文档初稿;发布那个让你略感尴尬的MVP。你从一周的真实反馈中学到的,比一个月的理论争论更多。

动力带来清晰。分析瘫痪带来空无。

4. 清晰即资深,聪明是负担。
工程师都有写“聪明代码”的冲动,因为这让人感觉能力出众。

但软件工程真正发生的地方,是当时间和他人介入之后。在这种环境中,清晰不是风格选择,而是降低运营风险的手段。

你的代码是一份“凌晨两点陌生人会看的战略备忘录”。优化的目标不是你的优雅,而是他们的理解。我最尊敬的高级工程师,永远选择清晰胜于聪明。

5. 新奇是一笔债务,你将以宕机、招聘和心智负担偿还。
把技术选择当作拥有有限“创新代币”的组织来管理。每采用一次非标准方案,就花掉一个代币,而你负担不起太多。

关键不是“永不创新”,而是“只在你被付费去创新的地方创新”。其他一切都应选择“无聊”的方案,因为“无聊”的系统有已知的失败模式。

“最好的工具”往往是“在多种情况下最不糟的工具”,因为技术动物园的维护成本才是真正的负担。

6. 代码不会替你发声,人会。
早年我以为“好代码会自己说话”。错了。代码沉默地躺在仓库里。你的经理会不会在会议上提到你?同事会不会推荐你去参与项目?这些才决定你的影响力。

在大公司里,许多决策发生在你不在场的会议上,由你没写的总结报告决定,而参与者只有五分钟和十二个优先事项。如果没有人能在你不在时清楚表达你的价值,那你的影响几乎等于零。

这并不是“自我推销”,而是让价值链对他人——包括你自己——都清晰可见。

7. 最好的代码,是你根本不用写的代码。
工程师文化常常歌颂“创造”。没人因为删除代码而升职——尽管删除代码往往比新增更能提升系统质量。你不写的每一行代码,都是你永远不必调试、维护或解释的一行。

在动手之前,先问自己:“如果我们什么都不做,会怎样?”有时答案是“也没什么坏事”,那这就是最好的解决方案。

问题不是工程师不会写代码或不会用AI写,而是我们太擅长写代码,以至于忘了问一句:“这段代码真的有必要存在吗?”


8. 当你的用户足够多时,连你的bug也会有用户。
用户多到一定程度后,系统中每一种可观察行为都会被人依赖——无论你是否承诺过。有人会抓取你的API、自动化你的“怪癖”、缓存你的漏洞。

这带来一个职业级洞见:不能把兼容性工作当作“维护”,而把新功能当作“真正的工作”。兼容性本身就是产品。

设计废弃时,要把它当作迁移:给时间、给工具、给同理心。多数“API设计”,其实是“API退休”。


9. 大多数“慢”的团队,其实是“错位”的团队。
当项目进展迟缓时,人们的本能是怪执行力:是不是大家不够努力、技术选错了、工程师不够多。通常这些都不是根本问题。

在大公司里,“团队”才是并发的单位,而协调成本会随团队数呈几何级增长。多数的慢,其实是对齐失败——有人在做错的事,或者在错误方式下做对的事。

高级工程师花更多时间去澄清方向、接口、优先级,而不是“更快地写代码”,因为真正的瓶颈就在那儿。


10. 专注你能控制的,忽略你不能的。
大公司中,很多变量都超出你掌控:组织调整、管理决策、市场变化、产品转向。纠结这些只会带来焦虑,却无助于行动。

那些保持冷静又高效的工程师,会聚焦于他们的影响范围。你无法控制重组是否发生,但你能控制工作的质量、应对方式,以及你从中学到什么。当面对不确定性时,把问题拆分成小块,明确你能采取的具体行动。

这不是被动的接受,而是战略性的聚焦。花在无法改变之事上的精力,就是被偷走的行动力。


11. 抽象并不能消除复杂性,只是把复杂性推迟到你值班那天。
每个抽象层都是一种赌注——赌你永远不需要理解底层细节。有时你会赢,但抽象总会泄漏,当那一刻到来时,你必须知道自己脚下是什么。

高级工程师即使在技术栈越堆越高时,依然会去学习底层知识。这不是怀旧,而是出于对系统失败时那一刻的尊重。要善用你的技术栈,但也要理解它的崩溃方式。


12. 写作带来清晰。想更好地学会某件事,就尝试去教它。
写作能迫使人理清思路。每当我试着向别人解释一个概念——不论是在文档、演讲、代码审查评论,还是和AI聊天——我都会发现自己理解中的空白。让别人能看懂,也让自己看得更清楚。

这不仅仅是“分享知识”的善意行为,更是一种自我学习的捷径。如果你觉得你理解了某件事,试着用最简单的方式解释它。你卡壳的地方,就是理解的盲点。

教学,是调试你的思维模型。


13. 让其他工作得以发生的工作,最有价值——也是最容易被忽视的。
“粘合工作”——文档、入职培训、跨团队协调、流程改进——至关重要。但如果你不有意识地对待它,这些工作可能会拖慢你的技术成长,甚至让你精疲力竭。陷阱在于:你出于“好心”去做,而非将其视作有界、有价值的成果。

限定时间。轮换负责。让成果可见。把它们转化为文档、模板、自动化脚本。并让这些产出以“影响”呈现,而非以“性格”呈现。

“无价且隐形”对职业生涯而言,是危险的组合。


14. 如果每场争论你都赢,那你可能正在积累无声的抵抗。
我学会对自己的确定性保持警觉。当我“赢得太容易”时,通常有问题。人们停止反驳,不是因为被说服,而是因为放弃了。而他们会在执行阶段,而非会议上,表达这种不满。

真正的对齐需要时间。你必须理解他人视角、吸收反馈、并有时公开改变立场。

短期的“我是对的”的快感,远不如长期与人愿意合作的现实。


15. 当一个衡量指标成为目标时,它就不再具备衡量意义。
所有被管理层盯上的指标,最终都会被“游戏化”——不是出于恶意,而是因为人类天生会优化被衡量的事物。

如果你追踪代码行数,你会得到更多的行数;如果你追踪速度,你会得到夸大的估算。

高级做法是:每当有人要求一个指标,你提供一对——一个代表速度,一个代表质量或风险。然后坚持基于趋势作分析,而非崇拜阈值。目标是洞察,而不是监控。


16. 承认不知道,比假装知道更能带来安全感。
高级工程师说“我不知道”不是弱点,而是在建立安全信号。领导承认不确定,意味着团队也可以坦诚。反之,当所有人都假装理解,问题就会被掩盖,直到爆发。

我见过那种“最资深的人从不表示困惑”的团队,也见过由此造成的损害。问题没人问,假设没人挑战,初级工程师沉默,因为他们以为“别人都懂”。

以好奇心为榜样,才能拥有真正学习的团队。


17. 你的社交网络,比你任何一份工作都持久。
早年我只专注工作,忽视了人脉。现在回头看,这是个错误。那些花心思建立关系的同事——无论公司内外——几十年都受益。

他们更早听到机会消息,更快搭建跨团队合作,更容易被推荐,甚至与信任已久的人一起创业。

工作不会永远,但关系可能会。带着好奇与慷慨去经营,而不是功利心。

当你准备离开时,往往是关系为你打开下一扇门。


18. 性能的提升,更多来自“删工作”,而非“加聪明”。
当系统变慢时,人们常常选择添加:缓存层、并行处理、更聪明的算法。有时这没错,但更多时候,真正的突破来自一个问题:
“我们有没有在做根本没必要的事?”

删除不必要的工作,几乎总比加快必要的工作更有效。最快的代码,就是根本不运行的代码。

在优化前,先问一句:这项工作真的该存在吗?


19. 流程存在,是为了降低不确定性,而不是制造文书痕迹。
好的流程让协调更容易、失败更廉价。坏的流程只是官僚表演——不是为了帮你,而是为了方便事后追责。

如果你解释不出某个流程如何降低风险或增加清晰度,那它大概率只是负担。
而如果人们花的时间更多在“记录工作”,而不是“完成工作”,那说明出了大问题。


20. 最终,时间比金钱更宝贵。要据此行事。
职业早期,你用时间换金钱——没问题。但某个阶段后,等式会反转。你会意识到,时间才是不可再生的资源。

我看过资深工程师为了升一级拼到筋疲力尽,为了多拿几个百分点的薪水不断透支自己。有些人得到了,但大多数人事后都在想:这真的值得吗?

答案不是“不努力”,而是“知道自己在交换什么,并且有意识地做出选择。


21. 没有捷径,但有复利。
专业能力来自刻意练习——持续在能力边缘突破、反思、再重复。没有浓缩版本。

但好消息是:学习的复利在于创造新选择,而不仅仅是积累新知识。写作——为清晰,而非流量;构建——为复用,而非炫技;把伤痕——整理成手册。

把职业当作复利曲线,而不是彩票。那些这样做的工程师,往往走得更远。


最后的思考
虽然有二十一条经验,但归根结底其实只有几条核心原则:保持好奇、保持谦逊,并永远记得——工作本质上是关于“人”的
关于你为谁构建产品,也关于你与谁一起构建。

一段工程师生涯足够长,可以犯很多错,也足够长,可以从错误中学到足够多。
我最敬佩的工程师,不是那些从不出错的人,而是那些从错误中学习、分享所悟、并持续投入的人。

如果你刚起步,请相信:这条路会随着时间变得越来越丰盈。
如果你已深耕多年,希望这些话能与你共鸣。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/11 6:02:43

对比:传统vsAI方法解决SYSTEM权限问题效率提升300%

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个权限修复效率对比工具,功能:1.记录手动操作步骤和时间 2.记录AI自动修复时间 3.生成可视化对比图表 4.提供修复成功率统计。使用React前端Node.js后…

作者头像 李华
网站建设 2026/1/11 18:05:32

AI如何帮你轻松实现平衡二叉树?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Python程序,实现平衡二叉树(AVL树)的基本操作,包括插入、删除和查找节点。要求程序能够自动调整树的结构以保持平衡&#x…

作者头像 李华
网站建设 2026/1/11 11:21:24

VibeVoice-WEB-UI是否支持文本高亮同步?播客字幕联动

VibeVoice-WEB-UI是否支持文本高亮同步?播客字幕联动 在音频内容创作日益智能化的今天,一个核心问题正在被越来越多创作者关注:当AI生成的语音播放时,能否像视频字幕一样,实时高亮对应的文本内容? 尤其是在…

作者头像 李华
网站建设 2026/1/11 6:08:38

IFLOW实战:从零搭建电商订单自动化处理系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个电商订单自动化处理系统,功能包括:1. 多渠道订单自动抓取 2. 实时库存检查与预留 3. 支付网关集成验证 4. 物流API对接 5. 异常订单预警 6. 客户通…

作者头像 李华
网站建设 2026/1/10 20:05:30

LangChain vs 传统开发:效率提升300%的秘诀

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个对比演示项目,展示使用LangChain和传统方法开发相同功能的效率差异。要求:1. 实现一个电商产品推荐功能 2. 分别用传统编程和LangChain实现 3. 统计…

作者头像 李华
网站建设 2026/1/8 23:12:27

1小时快速验证:用Rancher部署微服务原型系统

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Rancher微服务原型生成器,功能包括:1. 模板选择(电商/社交/物联网等);2. 一键部署完整微服务栈;3. …

作者头像 李华