AI and the developer skillset

By Erin Hastings

AI-assisted programming, while still nascent, is rapidly becoming central to how software developers think about and create applications. As this transformation unfolds, much of the focus has been on navigating an uncertain and volatile technical environment. While AI is certainly reshaping this foundational area, it’s worth reflecting upon whether the most significant change may be happening in an entirely different domain.

Previous releases

The past can often offer insight during times of upheaval or metamorphosis. No paradigm shift is precisely analogous to another, but the recent emergence of AI echoes several critical moments in software development history:

  • The arrival of high-level programming languages in the 1950s-1960s introduced more efficient frameworks for writing software and managing machine-level details.

  • The personal computer revolution and GUI development of the 1980s democratized computing capabilities and completely transformed how we design and distribute code

  • The internet's rise in the 1990s created entirely new software verticals while permeating every aspect of daily life.

AI carries elements of all these transitions simultaneously, serving as a new way to tame software complexity, a democratizing force, and a fundamental shift that touches everything we build.

These historical disruptions reveal a generally consistent pattern: they force developers to refactor their skillsets by revising problem-solving approaches, expanding technical fluency to new tools and technologies, and updating practices in areas like security, quality assurance, and system design to address emerging challenges and risks.

In many ways, as we are learning, AI's impact on the software developer role does follow this familiar template. There are, however, aspects that set it apart qualitatively from any past occurrence.

Breaking changes ahead

Beyond providing unprecedented opportunities to build faster and at greater scale, AI enables something far more transformational: software creation through delegation and outcome-focused everyday human language. Although the evolution of the field has always been a story of increasing abstraction, if previous advances were baby steps towards this end, AI is closer to a quantum leap.

For the developer, the modern software development process is largely a hands-on exercise in translating general stakeholder requirements into specific algorithms, design patterns, and syntax. We bridge the gap between inexact, ambiguous ordinary language requests and precise, deterministic computer instructions, having a foothold in both the declarative and the imperative.

AI disrupts this process by moving developers as a default to the same abstraction level as our stakeholders. That is, we too are reasoning about and expressing requirements using ordinary language (through the ever-present LLM prompt). What’s more, we’re also actively offloading implementation details to autonomous decision-making proxies. This creates cognitive distancing between us and that natural and critical translation step where so often what we're building and for whom finally emerges with clarity.

Joel Spolsky described the problem over 20 years ago, noting “Code generation tools which pretend to abstract out something, like all abstractions, leak, and the only way to deal with the leaks competently is to learn about how the abstractions work and what they are abstracting. So the abstractions save us time working, but they don’t save us time learning.”1 More recently, Addy Osmani, reflecting on the developer impact of AI, observed, "the higher-level the abstraction, the harder it is to specify how exactly the software should work."2

While abstraction challenges may not be unfamiliar, the current AI-driven pervasiveness is, along with the potential implications for developer competencies.

As AI increasingly shifts our work toward that which is system-oriented, conceptual, and verbal, we may find ourselves operating more deeply in the realm of human needs, intent, and language. This environment will require us, perhaps more than ever, to continue bridging the gap between stakeholder requests and effective technical solutions; however, success in this environment will likely demand that we strengthen our human-centric, human-only capabilities: emotional intelligence, empathy, collaborative problem-solving, clear communication, and ethical reasoning, among other traditional “soft skills”. These competencies may not have always been recognized as essential for being perceived as a great developer, but they have always been what's required to build truly great software.

Ultimately, the full impact of AI on our skillset, technical and non-technical alike, remains uncertain. There are more questions than answers, but as Alan Kay reminds us, “The future is not laid out on a track. It is something that we can decide, and to the extent that we do not violate any known laws of the universe, we can probably make it work the way that we want to.”3

Erin Hastings
Team Lead
Author Image

Interested in speaking with a developer?

Connect with us.
©2025 Kirschbaum Development Group LLC Privacy Policy Terms of Service