Communications of the ACM - Artificial Intelligence 11月03日 00:55
生成式AI时代,计算机专业毕业生的职业前景展望
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

尽管生成式AI对软件开发带来了变革,但计算机专业毕业生仍面临乐观的职业前景。AI擅长生成简单的代码模块,但构建复杂、可维护的软件系统仍然需要人类的专业知识。AI生成的代码往往存在接口设计不清晰、模块间流程不直观以及错误处理复杂等问题,难以适应长期维护和需求变化。因此,掌握软件基础知识、积极参与开源项目、以及专注于软件测试和性能优化将是未来职业发展的关键。AI将淘汰平庸的开发者,但高技能人才将更受青睐。

💡 尽管通用LLM和专业工具可以生成简单代码,但构建复杂、可维护的软件仍需人工。AI生成的代码往往是“意大利面条式代码”,难以维护和修改。

🛠️ 在大学期间,应扎实学习软件基础知识,并利用AI工具辅助学习,同时识别AI可能产生的错误,培养在行业中极具价值的技能。

🧑‍💻 参与开源软件开发,例如贡献代码、微调模型或标注数据,能有效提升代码集成能力并展示个人技能。

🧪 软件测试和性能优化至关重要,尤其是在发现AI生成代码的盲点和提升其性能方面,这些技能在可预见的未来仍将是人类的专长。

📈 AI的力量将淘汰平庸的软件开发者,高技能人才将更受重视,行业可能出现“赢者通吃”的局面,个人需努力提升自身竞争力。

Much ink has been spilled discussing what the career prospects are for a CS graduate in this age where generative AI has upturned our world. Much of that ink has predicted a gloomy outlook. Here I cast a decidedly more optimistic look, but point out that the positive outcomes will take some determined action, from educators and from learners. 

To state the obvious, the skill of writing “simple” software modules is no longer useful; that has been easily automated away by general-purpose LLMs like ChatGPT or Gemini or specialized software development tools like Cursor or Amazon’s Code Whisperer. So, a student may be tempted to skip the foundations of software programming and software engineering and go after the shiny toys like prompt engineering or LLM fine-tuning, but that would be a mistake if you want to build a meaningful, lasting career in the technology sector.

What Is the Trouble with AI-generated Code? 

While plain code blocks can be AI-generated, it is still a human enterprise to create reasonably complex software by piecing together these code blocks while keeping the overall software readable and therefore maintainable. I have examined enough large software packages generated by the latest AI tools to know that such software is the epitome of “spaghetti code.” The interface design is not clean, the flow between code modules is unintuitive, and handling error cases is convoluted—these are exemplar items in a recipe for software that ages poorly. If you change one specification one little bit, can you revise the software? Maybe you can with that one change, but if the software has to last, such changes build up and that’s where the spaghetti code comes to bite us. 

A legitimate question is: What is the problem with unreadable code if it is going to revised by AI tools only; no human needs to read the code. The fact is, we are far from trusting such code in production settings, as I have gathered by talking to many colleagues in the software business. So, for the foreseeable future, we will have humans verifying software, for its functionality, reliability, and security. And the process of translating ambiguous or imperfectly defined software specifications into something rigorous still remains a messy, human affair. 

What Can You Do in College to Future Proof Your Career?

If you buy my argument above, learn the software fundamentals in college because they will be the foundation in this frenetic race where new models and architectures seem to come out every day. Use AI tools generously in your college work (of course, check what is allowable by your course policy). But be on the lookout for errors that AI makes, errors that compromise some functionality or violate some reliability or security property. This skill is supremely valuable in the industry today and picking it up in college is the way to go.

The second aspect is contributing to open-source software development. Say, if you can contribute to fine-tuning of some open-source ML model or a method to annotate data samples for training, that would be a valuable skill to highlight. This would also sharpen and showcase your skill in integrating your code with that of others which, as we have argued above, is important. 

The third aspect is software testing and performance optimization. Pick these skills up as testing to find blind spots in AI-generated code will remain in demand. Ditto for skills to optimize the AI-generated software for performance. This needs holistic understanding of algorithms, software infrastructure (like compilers or runtime environments), and hardware, again likely to remain a human endeavor, for the near future at least. 

The Outlook — Cloudy or Sunny?

Like most things in life, the answer depends on you. The power of AI will render the mediocre software developer obsolete, as it has already started doing. So, there will be a greater premium on the higher-skilled software professional who has the skills that a machine does not. There will be an even greater incidence of “winner take all,” where a few software (synonymously, AI) companies will become fabulously successful at the expense of many others. And, as an individual, the pressure to be “above average” will become even more emphasized. But, everyone becoming above average is a mathematical impossibility, isn’t it? Unless you live in Lake Wobegon.

Note: A shorter version of this post was published in The Times of India Techies Section on September 24, 2025.

Saurabh Bagchi is a professor of Electrical and Computer Engineering and Computer Science at Purdue University, where he leads a university-wide center on resilience called CRISP. His research interests are in distributed systems and dependable computing, while he and his group have the most fun making and breaking large-scale usable software systems for the greater good.

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

生成式AI 计算机专业 职业前景 软件开发 技能提升
相关文章