干了十年程序员,我不再跟AI比谁懂的多 📅 2026/8/15 12:07:20 半年前团队来了个应届生挺机灵的。入职第三天他拿Cursor写了个完整的CRUD模块接口、校验、异常处理一应俱全。代码贴出来格式规整命名规范。我盯着屏幕看了几秒说实话心里咯噔了一下。十年前我干这事得翻文档、查Stack Overflow、对着IDE一行行敲少说大半天。他二十分钟搞定了。那天晚上我骑车回家风灌进领口脑子里一直转一个问题如果经验和知识可以被一个工具在几分钟内补齐那我多出来的这十年到底值什么知识这条护城河确实塌了我不想装。以前带新人我最有底气的就是你这个问题我见过。Spring事务传播机制的坑、JVM的GC调优、分布式锁的边界case……这些东西靠踩坑攒出来的新人要追上来得熬。现在呢他问AI三秒钟不光给你答案还给你三种方案对比顺便告诉你各自的适用场景。我花了三年才真正理解的为什么这里要用ConcurrentHashMap而不是synchronized他可能花三分钟就理解了。当然他那种理解和我的理解不是一回事但表面上那个信息差没了。承认这一点其实挺难受的。但有些东西AI给不了你答案转折发生在大概两个月前。线上一个订单系统出了个诡异的bug高峰期大概万分之一的订单会重复扣款。日志看着没问题链路追踪也完整该幂等的地方也做了幂等。新人用AI分析了半天AI给了一堆可能性网络重试、消息队列重复消费、缓存不一致……都对但都太泛了。等于把教科书上分布式事务常见问题列了一遍。我坐在那儿没急着动手。我在想的是另一件事这个bug只在高峰期出现而且只出现在某个特定的支付渠道。那说明它大概率不是通用的并发问题而是跟那个渠道的回调机制有关。顺着这个方向去查果然那个渠道的异步回调在网络抖动时会发两次而我们的幂等键用的是订单号没用渠道流水号。改一个字段的事。你看AI能给你一百种可能性。但决定你先排查哪一个的是你对系统的体感。是你对这个业务链路的熟悉程度是你脑子里那张不是画在文档里、而是长在直觉里的架构图。这种东西不是知识。是十年里无数次半夜被电话叫醒、无数次对着监控面板发呆、无数次在为什么和到底是什么之间反复横跳之后长出来的一个东西。我后来想真正的差距是怎么想我现在带新人越来越不关心一个人知不知道某个API、某个框架的某个特性。那些东西说实话我也记不全我也得查。我关心的是另一件事。需求评审的时候产品丢过来一个功能。有人接过去就开始想怎么实现脑子里已经在拼技术方案了。但有人会先停一下问一句这个问题本质上是在解决什么有没有可能根本不该用这个方案这就是拆解问题的思维。不是怎么做是先想清楚做什么和为什么做。再比如架构设计。初级工程师想的是我要用微服务、我要上消息队列。但做过几年、真正被坑过的人想的是这个系统的读多还是写多数据一致性要求到什么程度未来半年最可能的变更方向是什么我能不能先用一个更简单的方案扛住把复杂度推迟这是架构思维。它不是一条规则是一种在约束条件下做取舍的直觉。而取舍AI替你做不了因为取舍背后是你对业务上下文、对团队能力、对时间窗口的综合判断。还有一个我特别在意的抽象能力。代码写多了你会发现很多看起来完全不同的问题底下是同一个模式。你见过足够多的具体之后慢慢能提炼出一般。这个能力让你在面对新问题时不是从零开始而是能迅速归类哦这本质上是个生产者-消费者问题、这其实是个状态机。AI可以帮你写出具体的实现但这个问题本质上是什么这个判断是你自己做的。我也焦虑过现在好一些了说完全不焦虑是假的。去年有段时间我反复想如果AI再进化两年是不是连怎么想它也能模拟了是不是我引以为傲的那些直觉、体感本质上也不过是足够多的pattern matching只不过跑在我脑子里而不是GPU上想了很久没有确切答案。但我后来跟自己和解了原因很朴素就算AI有一天真能模拟这些思维方式在真实的工程场景里做决策的那个主体还是得是人。你要跟产品吵要跟业务方确认需求边界要在凌晨三点判断这个bug要不要回滚、回滚的代价是什么、不修的风险是什么。这些决策不只是技术问题是责任问题。AI没有担责这个概念。而且怎么说呢写代码这件事对我而言早就不只是谋生了。我享受那种把一坨混乱的需求理成清晰结构的快感享受那种啊原来如此的debug瞬间。这些东西AI替代不了不是因为AI不够强是因为它没有我。它不会在解决一个问题之后坐在工位上愣两秒然后轻轻笑一下。写在最后我今年三十七了。头发比十年前少了一些颈椎也不太行加班到十一点第二天就缓不过来。但我不太想回到二十五岁了。二十五岁的我知道很多API能背很多八股文手速快能肝。但我那时候看一个系统看到的是一堆零件。现在我看一个系统看到的是零件之间的关系是力是流动是哪里会先撑不住。这个视角是时间给的。是那些bug、那些故障、那些卧槽怎么会这样的深夜给的。AI把知道这件事变得廉价了。这其实是好事。它逼着我们去想一个以前可以含糊过去的问题除了知道你到底还会什么而那个答案往往是你怎么思考怎么拆解怎么在混乱中找到结构怎么在不确定中做判断。这些东西没有快捷键没有Skill模板。它们是你。所以如果你也是一个写了很多年代码的人你最近也在焦虑 AI 会不会让你变得不再被需要我想了很久我的答案是你那些真正痛苦地想过的东西谁也拿不走。别慌。你的护城河从来不是你知道什么。是你怎么想。写于一个普通的周六下午代码写不动了就写点别的。如果你也是个写了几年代码的人希望这篇能让你觉得这些年没白熬。数据仓库中的全维度宽表复用利器还是治理陷阱DWS 宽表和 ADS 宽表不是一回事组里只有一行有值却要填给所有行——分组「稀疏值回填」的窗口函数范式Doris LATERAL VIEW explode_split 实战优雅实现“一行转多行”数据链路重构复盘新模型上线如何优雅的兼容旧模型数据治理如何做计算存储治理面试问如果业务需求突然增加一个“7天未激活用户”的标签落在DWS层你会从哪层开始设计面试问DS中数仓分层调度策略是怎样的是所有的任务都写到一个WF中吗面试问数仓中跨域是放在哪一层跨域整合和联邦查询有什么区别游戏数仓 : 用户行为属性大表整合【宽表设计】