Is AI Coming For Coders’ Jobs?

Glenn Barfield, Senior Accessibility Program Manager

Is AI Coming For Coders’ Jobs?

Is it true that AI will cause developers' jobs to disappear? There is a chasm between developers and normal users when the same question is asked.

Ask developers whether they believe jobs are on the brink of getting automated in the short term and most would enthusiastically reply that there is no immediate danger. Indeed, as per Atlassian's State of Developer Experience report 2023, 62% of developers believe that current AI as a tool either does not increase their productivity, or only minimally improves it. So, while we are seeing some great new AI technology out there, the industry is still working towards broader adoption and more useful developer-oriented capabilities.

Nevertheless, at the general population, there is a misunderstanding that development jobs are one of the top work sectors that will be susceptible for AI robotization. I can appreciate this view if someone can visit an AI website, request some code, and it's just given to him. However, after considering a deeper examination of current and future product roadmaps for some of the dominant software vendors, two findings have been obtained. Initially, developers will remain important members of the community for several more years, if not decades. Second, we are now in a second-generation of developer-assistance technologies that significantly supplement the developer's worktasks-while not aimed at replacing them.

Human developers will continue to be much sought after for the foreseeable future.

Why do I say this? Due to all the ground that developers need to cover on the job, as well as those of any tool or set of tools purporting to abridge that ground, that is. Three major factors stand out to me.

Is AI going to eliminate a lot of developers’ jobs? There is a chasm between developers and the mainstream population when it comes to answering that question.

But if you asked developers whether they were concerned about job security in the short term, most of them would readily say "no, there is no immediate threat. Indeed, according to Atlassian's recently released State of Developer Experience Report, 62% of developers believe that today's AI delivers either little, or no productivity boost. Thus, although there are some exciting new AI technologies emerging around the corner, the field is still striving for wider implementation and more practical developer-focused features.

Nevertheless, there is a misconception in the general public that developer roles are the most at risk for AI automation. I can understand this perception when anyone can go to an AI website, ask for some code and it just comes back to you. However, after examining the product roadmaps of the leading software manufacturers in the market, the following two conclusions have been drawn. Initially, however, developers will still be significant assets for several more years if not decades. Second, we are in the second wave of designer-aid technologies that dramatically improve developer tasks—but are not meant to replace them.

Human Developers Will Continue to Be Useful For Some Time.

Why do I say this? Because of all the ground that developers must cover in doing their work, and the limitations of any AI tool or set of tools that would try to cover that ground. Three major factors stand out to me.

PROMOTED

In most instances the workflows are quite rigid, there are a few relatively rare exceptions that require to be dealt with by people and robots can run 24/7. Second, no work that involves real creativity can match well the existing generative AI or machine learning models. Today's AI aims at discovering the optimal response using a lot of sources of generalized knowledge. However, creativity and innovation are not usually the outcome of shared knowledge. The two notions guard against the developers as a target of the AI replacement. Devs operate in a constantly evolving job environment, which is full of uncertainty and offers a high level of creative challenges. So, sure, AI can help developers. But in the absence of some new type of AI we haven’t seen yet, current AI tools would make poor developers on their own.

AI of today has the potential to assist, provided you know how to drive it - Prompt-driven agents achieve rather trivial tasks in a very short time given human-specified instructions. However, to go deeper you will want more powerful tools and new abilities. For example, if the AI request is set up in such a way that it generates a high amount of AI assistance to the user, it will make a significant difference. This is an area of research known as prompt engineering, and to achieve optimal use of AI, a modest amount (but not too much) of expertise in this field is necessary. Here's an excellent blog post by Ethan Mollick on this subject. However, we are also becoming aware of advancements in toolkit for developers to build well prompts. For instance, Microsoft has recently launched a new developer portal for OpenAI as a means to streamline the process of developing AI-powered applications.

Generative AI is highly task-oriented Current applications are far from a stereotyped single coded program file. AI is today not intelligent enough to fully grasp what is involved in the nature of an application that involves thousands of files across multiple systems and locations. An AI could be fully trained by a developer to perform this, however, achieving this with the existing prompt engineering capabilities and the way GenAI operates with the data would require some effort. At the least, AIs are today in short of autonomy to make anything out of that information.

The next generation of AI agency in developer support will be a boon for developers.

Next simple question would be about the future of AI technology and its effect on the developers. Perhaps there is some way in the future that will render human developers unnecessary. Although I would never say never, I can say that this situation is not on the horizon. Observing the roadmaps pursued by the leading players in this field, a common challenge is to raise the level of developer productivity. This is a generalizable objective, although there are some themes that are generalizable under this productivity umbrella.

Making AI assistance tools more effective for developers—Currently, IBM, Microsoft, and Oracle are all working towards predicting by how much faster a developer can code with AI tools. Although the evidence is compelling, it is equally evident that faster does not necessarily lead to a solution. One thing that Amazon Web Services does is measure how effective the AI assistance is by how many AI recommendations a developer actually uses. This is an interesting way to look at productivity, because “help” that doesn’t actually help you is not very productive.

Assigning simple yet complex low-value tasks—Although the first generation of AI coding assistant is very effective in some ways, and it still suffers from being of a pretty limited scope on what it can do. Vendors are now trying to build features that increase the level of complexity—and in fact the agency—of the assistant. One illustrative example of this is the specialization of tooling AI assistants to manage updates to the underlying software. This year, some time, IBM, Oracle, SAP and AWS will be able to easily upgrade their Java programs to the new version. This is an extraordinarily time intensive, low-impact task that diverts developer's time from creating groundbreaking new applications. AIs that can do such work may not increase the productivity of individual developers, the primary benefit of first generation assistance, but will increase team productivity by removing such work from the hands of learned and thus expensive professionals.

Ensuring that the code meets security, ethical and company standards There is a lot of talk about responsible AI, but much of the discussion to date has been centered on ensuring that a large language model issues responses that are not dangerous or unethical. Clearly, that has been an ideal place to begin. Nevertheless, I believe the concept of responsible AI can be transplanted to other areas of the application development process, for instance. In one sense, developing secure applications is difficult, and, given that the "ideal" time to identify vulnerabilities that could compromise a program's security, will be while it is developing, then for the program to be as secure as is reasonably achievable is while it is developing. There are also ongoing changes in regulatory and corporate standards for development itself. Even something as simple as a consistent way to deliver comments into an application can be improved with policies that could be managed alongside responsible AI guardrails. All of these are crucial elements of good applications that are sometimes neglected in favor of time or developers who are not fully trained. Accordingly, any of these has the potential to be good candidate regions for AI entry.

But in short, it is still true that developer jobs are sound. As technology evolves, so will the developer role. One thing is for sure, that developers are a tough lot of people with a love of experimentation (and being in new and evolving environments). Twenty years ago terms like DevOps, Agile and cloud-native did not exist, but developers adopted and adapted all of those ideas to great effect. My prevailing thought is that the more developers get their hands on AI, the better chance we all have of seeing even more innovations.

Author
Glenn Barfield
Senior Accessibility
Program Manager
Basil Infotech Limited, Australia