软件工程师核心能力是抽象复杂问题,AI只替代编码环节

严格说,从事软件开发这个职业的人叫软件工程师,不叫程序员。

做一个项目,要理解需求、基于需求抽象设计、编码、验证、上线后维护,只会写代码的人从来就不是合格的工程师。

AI确实能生成代码,但代码只是软件的中间产物,除了代码还要:

  • 搞清楚要解决什么问题
  • 把模糊需求变成可验证的规格
  • 发现AI写错了但测试没测出来的地方
  • 让系统在生产环境里稳定运行
  • 没有安全漏洞

如果说程序员唯一会的东西被100%取代,这话跟说医生唯一会的是开处方也差不太多,处方反正可以百度搜索一份AI生成一份打印出来,所以医生没用了。

做个演示和发布产品之间还是有很长的路要走。领域专家用AI Vibe一个能跑的原型,早就可以做到了,但做个演示给自己用,和发布一个产品给大家用还是不一样的,原型之后有一堆事情要处理:UI细节、各种边界条件、高并发、安全、成本。这些事不是稍微了解一下就能搞定的。

懂AI本身也不是一件低门槛的事情,同样是一门工程学科:上下文工程、构建评测集、AI Agent编排、失败模式分析。谁最容易学会这些?恰恰是有工程底子的人。能成为软件工程师本来就经过了一轮筛选,这群人学新领域的速度通常也不慢。

领域专家可以学AI,软件工程师一样也可以学领域知识。领域知识固然有壁垒,但通常是可学的显性知识,而工程直觉更多来自大量实践。

软件工程师的核心能力是把复杂问题抽象成可执行的结构、理解系统如何失败、判断什么能造出来,这些能力是跨领域的元能力。有了这些原能力,再去学领域知识也没有想象的那么难。

判断一家公司是不是AI Native,看它做事的流程是围绕人设计的,还是围绕AI Agent设计的。AI原生的核心是:AI Agent是执行主体,人负责定义问题和验收结果。如果只是在原来的流程里加一点AI,那不叫AI原生。

用这个标准看,真正需要的是对行业的理解和对AI的理解,缺一不可,和职业无关。

软件工程师的定义其实一直在变。早年的软件工程师要手写汇编、自己管内存;后来高级语言和框架接管了这些,工程师的重心转向架构和业务建模;再后来云服务把运维也抽象掉了。每一轮工具升级,写代码在工作中的占比都在下降,但软件工程师这个职业没有消失,只是把重心挪到了工具还做不了的那一层。

这一轮AI带来的变化也一样:编码这个环节被AI Agent替代了,工程师的重心自然移到定义问题、拆解需求、设计验证标准、判断结果对不对。职业没有被取代,只不过职业定义又往上走了一层:从把方案变成代码变成决定该做什么、验收结果对结果负责。

而且这个变化不是软件工程师独有的。金融、医疗、工业里的岗位同样在经历重新定义:整理报表、初筛读片、写标准化文档这些环节会交给AI,从业者的价值向判断、决策和把关集中。每个职业在AI原生的流程里都要重新定位,AI Agent负责执行,人负责定义问题和验收结果。

这种变化正在冲击各行各业,软件工程师并不比别人离它更远,反而因为长期和工具打交道,往往更早适应这种分工。

话题来源 @dotey 67.7K阅读 ❤️419 x.com/…↗ 已改写,非原文转载
24 浏览 0 评论 0 反应
登录 后参与评论
还没有评论,来抢沙发。
查看完整榜单
查看完整榜单
查看完整榜单