Papers
Topics
Authors
Recent
2000 character limit reached

What do professional software developers need to know to succeed in an age of Artificial Intelligence?

Published 30 May 2025 in cs.AI | (2506.00202v3)

Abstract: Generative AI is showing early evidence of productivity gains for software developers, but concerns persist regarding workforce disruption and deskilling. We describe our research with 21 developers at the cutting edge of using AI, summarizing 12 of their work goals we uncovered, together with 75 associated tasks and the skills & knowledge for each, illustrating how developers use AI at work. From all of these, we distilled our findings in the form of 5 insights. We found that the skills & knowledge to be a successful AI-enhanced developer are organized into four domains (using Generative AI effectively, core software engineering, adjacent engineering, and adjacent non-engineering) deployed at critical junctures throughout a 6-step task workflow. In order to "future proof" developers for this age of AI, on-the-job learning initiatives and computer science degree programs will need to target both "soft" skills and the technical skills & knowledge in all four domains to reskill, upskill and safeguard against deskilling.

Summary

Essential Skills for Software Developers in the Era of Generative AI

The paper by Kam et al., presented at the ACM International Conference on the Foundations of Software Engineering, offers a comprehensive analysis of how Generative AI (GenAI) is reshaping the field of software development. Based on empirical research conducted with 21 developers proficient in using AI tools, the paper elucidates the skills and knowledge required for professional software developers to maintain efficacy and productivity in a rapidly evolving landscape defined by artificial intelligence.

Central to the paper's findings is the delineation of four critical domains of expertise necessary for developers thriving in an AI-enhanced environment: Generative AI Usage, Core Software Engineering, Adjacent Engineering, and Adjacent Non-Engineering. These domains interlace through a six-step task workflow that developers follow when collaborating with AI. Unsurprisingly, with AI’s capabilities to automate repetitive tasks, developers can allocate more time to the planning stages of the software lifecycle rather than coding itself—a transformation that emphasizes the importance of strong technical decision-making and design skills traditionally held by senior engineers.

Numerically, the paper substantiates AI’s productivity benefits, citing a 26% increase in efficiency for professional developers using AI tools such as GitHub Copilot over extended periods. Nonetheless, the productivity benefits are uneven, as junior developers identify needing foundational programming skills to leverage AI effectively and often take longer to complete tasks when assisted by AI.

The research distinguishes 75 essential tasks that AI is enhancing across the software development lifecycle, juxtaposing these tasks with 12 identified professional goals. These tasks reflect critical interactions such as generating documentation effortlessly, proposing test cases, exploring technical solutions, and optimizing deployment strategies. Developers adept at working with AI are observed to employ iterative and non-linear workflows, emphasizing prompt engineering and collaborative skills that ensure effective AI-human interplay.

From an educational and practical standpoint, the paper advocates reskilling and upskilling initiatives to guard against deskilling effects. As AI tools increasingly infiltrate the developer's workflow, depth in core software engineering and breadth in adjacent domains will be crucial for maximizing the productivity benefits these tools offer. Furthermore, insights from the research suggest that educational curricula should integrate AI literacy, focusing on teaching developers how to prompt LLMs effectively while critically evaluating AI suggestions through a rigorous understanding of engineering principles.

In sum, Kam et al. present a nuanced perspective—illustrating AI’s transformative potential not as an agent of displacement but as an augmentation of human developers’ existing functions; facilitating them to engage in higher-order problem-solving and design. The paper provides clear implications for both software developers and educators aiming to ensure seamless integration of AI technology into software engineering practice, advocating for a strategic focus on both technical and soft skills development in educational programs. As the field of software engineering embraces AI, such comprehensive analyses lay the groundwork for future research and development in AI-based workflows, potentially guiding industry-wide standards and best practices.

Whiteboard

Paper to Video (Beta)

Open Problems

We found no open problems mentioned in this paper.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.

Tweets

Sign up for free to view the 7 tweets with 2217 likes about this paper.