技术革新从不以人的意志为转移,但却能因个人的选择而重铸职业轨迹,AI崛起的当下,程序员的命运之笔正握在自己手中。摘要:今年春节前后,AI界热闹非凡,各种大模型的新突破、超强的新能力、全自动新工具的消息像海啸一样扑面而来。可以说各行各业的牛马们都在瑟瑟发抖,时刻有被替代的风险。生文、生图、生视频各种能力刷刷的往上涨。再加上越来越多裁员和招聘卡年龄的信息,真不知该对技术进步心生欢
今年春节前后,AI界热闹非凡,各种大模型的新突破、超强的新能力、全自动新工具的消息像海啸一样扑面而来。可以说各行各业的牛马们都在瑟瑟发抖,时刻有被替代的风险。生文、生图、生视频各种能力刷刷的往上涨。再加上越来越多裁员和招聘卡年龄的信息,真不知该对技术进步心生欢喜,还是该心生畏惧。
作为一个DOS时代干起的40+大龄程序员,这20多年的工作中经历过不少新旧更替,从DOS开发到Windows开发、从单机到联网开发、从PC到功能手机开发、从功能机到智能机APP开发,从APP到跨平台SDK开发,我始终在学习新事物。然而,这一次变革不太一样。以前的技术更替,主要是学习新的平台,新的系统,掌握新的开发工具。而现在则是AI大模型工具、自动化生成式编程和AI Agent可以直接替代程序员。特别是manus这种全能AI Agent出现后,不再需要这么多程序员,程序员的出路在哪里呢?
上周,我用Cursor做了一个简单的微信小程序,一共两个Tab页面。一个页面根据最新热门电影的json数据显示电影列表,另一个支持选择电影进行评价,并在提交后显示提交成功。整个过程,除了搭建开发测试环境和微调,我没有写一行代码,测试用的json数据,也是DeepSeek从豆瓣热榜抓取的。这次实践让我深刻体会到,只要指令清晰准确,AI开发效率非常之高。这既让我为AI技术的进步感到兴奋,这将减轻了很多码农手搓的基础性工作,大大的提升效率;同时也让我不禁思考,未来程序员的工作方向在哪里?基础编程知识还重要吗?C/C++程序员又该何去何从?
最近,我一直在思考这些问题,关注相关资讯,看了许多直播,读了很多文章。直到看了CSDN直播“建忠研思:AI时代如何做一名硬核程序员?”,才逐渐理清思路。结合业内大神们的观点,汇总一下我的理解:
一、向上成长
目前AI大模型特别是后面AI Agent的发展,会把偏前端和中层也就是应用层的程序员逐步替换掉,那么对于这部分程序员来说,应该向架构师和产品经理方向的转换。从更高层次把控程序走向。而大部分基础性细节和实施可以交给AI大模型来完成。比如我上周用cursor做的那个小程序,你就需要有产品思维,知道客户需要什么,要做成什么样子用户操作更方便,更喜欢用;然后就是需要有架构师的思维,规划整个APP的架构,不要堆出一个又一个屎山。尽管有人认为可以不关注代码,只需要不停的重新生成,但是目前对于复杂的项目,AI来说还是比较难以一次性理解和生成,全都重新生成代价也比较高。不停地根据需求重新生成,完全不管整个工程的架构的模式,可能更适合原型。
二、向下深入
另一个发展方向是向下,成为系统级偏底层的程序员,构建AI运行的支撑环境,也就是李建忠所说的硬核程序员。从事系统级开发,需要熟悉AI依赖的硬件系统和平台,从以CPU为中心的架构转向以GPU/NPU为中心的神经网络架构,从以串行为主转变为以并行为主。这条路径对C++程序员较为友好。
那么,系统级程序员需要具备哪些能力?建忠老师总结了以下几个方面:
语言能力:掌握C++和python,再加上一些Rust。而且不光要熟悉语法,也要培养机器思维,理解代码背后内存结构、运行时变化、编译器转换及运行时机制,了解这些的最终目的是提升代码效率。同时,还要具备设计模式、组件封装、接口设计和架构设计这些抽象思维。特别是接口设计尤为关键,它抽象类运行时接口设计和C++20的Concept编译时接口设计,还要遵循良好的设计规范。系统知识:仅有语言能力不够的,还需要学习所处技术栈的系统级基础设施技术。如果你是在Linux上开发,需熟悉Linux操作系统;如果你进行GPU编程,就要掌握GPU/NPU等系统计算机架构层面的知识,如CUDA并行编程模型。算法理解:一方面要快速理解经典算法,重点掌握算法能干什么,输出是什么,它在什么场景下是最优化的选择,而不要跳入细节的海洋。另一方面,是算法策略的学习,这个需要结合系统来理解。例如,DeepSeek近期开源的项目,需要在深入理解CUDA等系统层知识的基础上,对经典算法和AI算法策略进行优化,以充分发挥算力。抽象设计:抽象思维贯穿设计始终,设计模式、组件封装、接口设计和架构设计都属于抽象范畴,日常需要注重锻炼抽象思维能力。此外,建忠老师还提到,机器人领域,特别是当下热门的具身智能,比较适合C++程序员发展。据我了解,目前机器人领域主要依赖Linux和ROS系统。据说最新的ROS2更加优秀。
综上所述,未来程序员要么向上发展负责产品和架构,要么是向下发展成为系统级程序员。无论如何,基础知识不可或缺,要不然就会成为屎山制造机了。
我个人来说可能系统级层面的东西更感兴趣,后面也准备去学习并持续更新笔记。当然,也会兼顾产品知识的学习,毕竟“人人皆可成为产品经理”。
面对 AI 冲击,无论你是纠结于转型方向的资深程序员,还是初入行业感到迷茫的新人,都别慌。关注【智践行】,我们一同探讨应对之策,在这变革时代找到安心的职业发展路径。
来源:小肖说科技