Explore UAB

Faculty Excellence Amber Wagner March 11, 2025

 Amber Wagner With every passing day, the number of news articles about artificial intelligence (AI) increases. A common concern among most people is how it will impact their job. I hear questions with increasing frequency regarding what the likelihood is that AI will replace a given job, and given that AI can now generate code, the most popular question I’m asked is if AI will replace programmers. The short answer is a resounding “no.” In fact, the demand for programmers will likely increase. Let’s talk about why …

I recently heard a talk by Will Blackburn of Birmingham AI in which he told a story about a developer named Jessica. Jessica works very hard and writes code daily. The office is buzzing with talk of a new technology coming that would increase the speed with which programmers could code by tenfold. Jessica has concerns that if programmers can code more efficiently, there will be a decreased demand for programmers. This scenario sounds familiar. Now for some details I’ve neglected to share … Jessica is a programmer in the 1960s. She codes on punch cards, and the new technology being released: magnetic tape.

Programming languages have continually evolved from machine language (ones and zeros) to assembly language to high-level languages (e.g., Java, Python). The hardware we use to program has grown in speed and capability. With each advancement, programmers have increased the speed with which they can produce code. New tools have been introduced throughout the years, such as debuggers and version control systems, that allow programmers to correct or share their code more efficiently. AI is just that, another tool to help programmers code more efficiently. When writing software, programmers are able to use AI for a variety of tasks:

  • To write short snippet of code to integrate into the larger product,
  • Serve as pair programmer (a technique utilized to catch errors earlier in the development process), and
  • A means to reason about code by asking the AI to ask questions about the code or walkthrough code written by the developer.

Each of these tasks makes the development process smoother, but the programmer is still required. Moreover, programmers are required to continue evolving the AI itself. While I can ask an AI tool to write code for me, the code needs to be reviewed, tested, integrated with the larger system, and tested again. Even if AI tools were capable of writing an entire system, the code would still need to be tested, not only for functionality, but to ensure it meets system requirements (i.e., security, reliability, and performance). For example, the security requirements may be more rigid than the code the AI tool provides, and therefore, a programmer would need to validate the code against the security constraints.

A recent report from McKinsey1 states, “[o]n average, large IT projects run 45 percent over budget and 7 percent over time, while delivering 56 percent less value than predicted.” The primary issues causing projects to be delayed or over budget are: missing focus, content issues, skill issues, and execution issues. The statistic of delivering “56 percent less value than predicted” can likely be contributed to not fully understanding the requirements of the project. The first task to undertake when developing software is to decide the requirements of the project, which requires talking with the client about their wants and needs. If humans still have not mastered this ability in the 75 years we have been writing computer code, an AI certainly is not ready to do so; however, AI tools will likely help programmers code more efficiently, reducing costs for development companies.

Key Takeaway:

Rather than worry about AI taking away jobs, consider how to use AI to become more productive at a given job. AI is extremely powerful, and if prompted well, can provide a great deal of assistance in mastering a task.

The University of Alabama at Birmingham’s Department of Computer Science is preparing our students to use AI as an effective tool in addition to teaching our students how to build AI tools. In Fall 2025, a course on AI assisted software development will be taught, elaborating on the ideas presented in this article. Additionally, all CS faculty are creatively integrating AI into their curriculum.

We encourage you to also read how we have demystified data science and GPU programming.

Amber Wagner, Ph.D., is an assistant professor in the UAB Department of Computer Science. You can email her at awagner@uab.edu.


1Block, Michael, Blumberg, Sven, and Laartz, Jürgen. Delivering large-scale IT projects on time, on budget, and on value, October 1, 2012, McKinsey & Company.
https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/delivering-large-scale-it-projects-on-time-on-budget-and-on-value


More News

  • Alabama Public Service Training Initiative launches, names director
  • Psychology faculty member wants to better understand how personal interactions can impact health
  • Chairs Leadership Academy prepares faculty for challenging roles

Back to Top