news 2026/8/15 12:07:13

干了十年程序员,我不再跟AI比谁懂的多

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
干了十年程序员,我不再跟AI比谁懂的多

半年前团队来了个应届生,挺机灵的。入职第三天,他拿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中吗?

面试问:数仓中跨域是放在哪一层?跨域整合和联邦查询有什么区别?

游戏数仓 : 用户行为属性大表整合【宽表设计】

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

记账App用来用去,最后不如用DeepSeek自己开发一个

我尝试过各种各样的记账应用,但发现始终绕不开两大问题:数据分散、手动填入。 就是这两个关键问题——在当今如此分散、碎片的消费模式下,用户根本不可能事无巨细地手动记账,而功能再齐全的记账软件都没能真正解决这一点。所以我…

作者头像 李华
网站建设 2026/8/15 12:04:26

N_m3u8DL-RE 下载教程:7 个问答带你玩转 MPD/M3U8/ISM 流媒体下载

N_m3u8DL-RE 下载教程:7 个问答带你玩转 MPD/M3U8/ISM 流媒体下载 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m…

作者头像 李华
网站建设 2026/8/15 12:01:10

ASP.NET MVC 5实战:从零构建高性能婚庆网站全攻略

1. 项目缘起:为什么选择ASP.NET来构建婚庆网站? 最近几年,身边不少朋友转行或者兼职做起了婚庆策划,经常跟我吐槽说,想在网上展示自己的服务和案例,但要么是模板网站太死板,要么是定制开发价格高…

作者头像 李华
网站建设 2026/8/15 11:56:52

从洛谷P3382模板题深入理解三分法:原理、实现与工程应用

1. 项目概述:从“模板”到“思想”的跨越 看到“洛谷P3382【模板】三分法”这个标题,很多刚接触算法竞赛的朋友可能会下意识地认为,这又是一道需要死记硬背“标准答案”的题目。我曾经也这么想,直到在实际解题和工程应用中反复碰壁…

作者头像 李华