Artificial intelligence (AI) is already recognized as a powerful productivity tool for developers, but its potential also goes much deeper and impacts career aspirations. The rise of AI-assisted code development is opening opportunities for technology managers and IT professionals to assume more expansive roles on the business side.
"IT pros can be expected to wear a number of new hats," says Preeti Lobo, practice director for business integration and automation at Apps Associates. People can now pump out code on demand in an abundance of languages, from Java to Python, along with helpful recommendations. Already, 95% of developers in a recent survey from Sourcegraph report they use Copilot, ChatGPT, and other generative AI tools this way.
The rise of these tools raises an interesting question. Despite the potential for vast productivity gains from generative AI tools, will technology professionals' jobs actually grow more complicated in an age of increased automation?
After all, the ability to generate new code automatically means someone somewhere will have to ensure code across the organization meets tight business and governance requirements. Managing all this code will require high levels of cohesion, accountability, and security. And those demands mean new roles and responsibilities for developers.
For starters, security and quality assurance tasks associated with software jobs aren't going to go away anytime soon. "For programmers and software engineers, ChatGPT and other large language models help create code in almost any language," says Andy Thurai, an analyst with Constellation Research, before talking about security concerns.
"However, most of the code that is generated is security-vulnerable and might not pass enterprise-grade code. So, while AI can help accelerate coding, care should be taken to analyze the code, find vulnerabilities, and fix it, which would take away some of the productivity increase that AI vendors tout about."
Then there's the issue of code sprawl. An analogy to the rollout of generative AI in coding is the introduction of cloud computing, which seemed to simplify application acquisition when on-demand IT first rolled out, and now means there are a tangle of services that need to be managed.
Research already suggests the relative ease of generating code via AI will contribute to an ever-expanding codebase. A majority of the 500 developers in the Sourcegraph survey are concerned about managing all the new code that comes with generative AI, along with dealing with the issue of code sprawl and its contribution to technical debt.
The Sourcegraph survey authors refer to this growth in demands as "Big Code." Even before the rise of generative AI, close to eight in 10 developers said their codebase grew five times over the last three years, and a similar number struggled with understanding existing code that is generated by others.
Faster delivery of code also brings greater expectations from the business for applications that adapt more readily to changing requirements. "We are evolving toward a modeling-based approach and away from coding based on if-then-else rules," Lobo says.
IT professionals should expect an increased emphasis on design thinking, which will become a bigger part of developers' jobs -- and this shift will lead to new responsibilities, too. "Someone working with AI can differentiate their technical capabilities by focusing on softer skills in the areas of design and design thinking," says James Fairweather, chief innovation officer at Pitney Bowes.
"Increasing their capabilities in these areas can help improve a developer's ability to communicate and present data science and artificial intelligence insights. It can also help in the redesign of processes and the way humans interact with technology to maximize the benefit that AI can bring to improving results."
Increased use of AI will also mean personalization becomes an important skill for developers. Today's applications "need to be more intuitive and built with the individual user in mind versus a generic experience for all," says Lobo. "Generative AI is already enabling this level of personalization, and most of the coding in the future will be developed by AI."
Despite the rise of generative technology, humans will still be required at key points in the development loop to assure quality and business alignment. "Traditional developers will be relied upon to curate the training data that AI models use and will examine any discrepancies or anomalies," Lobo adds.
Technology managers and professionals will need to assume more expansive roles within the business side to ensure that the increased use of AI-assisted code development serves its purpose. We can expect this focus on business requirements to lead to a growth in responsibility via roles such as "ethical AI trainer, machine language engineer, data scientist, AI strategist and consultant, and quality assurance," says Lobo. Technology professionals will also need to engage in "creating AI strategic roadmaps, as well as identifying anomalies in data structures and results."
On the more technical side, the increased use of generative AI will push natural language processing (NLP) skills front and center, says Lobo. "Professionals should aim to master programming languages like Python, Java, and C++, and learn more about libraries and frameworks such as NumPy, Keras, TensorFlow, Matplotlib, and Seaborn," she says.
"But they should also look to hone strong analytical, problem-solving, and critical-thinking skills, as well as linguistics. Skills such as these can help exponentially in the world of NLP, a foundational factor when working with AI."
Another additional role that technology professionals are assuming is coaching and supporting more people in developing and deploying their own apps. "In the past, the art of possible was limited because of the technical limitations or by the limitations of the IT departments," says Thurai.
"Now, the sky is the limit. Anyone can figure out a way to improve either the top or bottom line of any business, which can be implemented using AI to improve the business as they imagined in a faster pace than you imagined."
Finally, it's worth noting that generative AI could also assist with the productivity of some technology workers. Thurai says specifically for IT teams based at the maintenance and support end of the software stack, AI likely helps more than complicates.
"AI can also impact incident responders, site reliability engineers, and support personnel," he adds. "In their case, they can use AI to find out any precedence, how it was fixed, whether it can be automated so it won't happen again, and help with automating some of the mundane fixes to avoid constant alerting and wasting many hours in fixing things that are rudimentary. For customer service folks, it can help personalize service for individuals based on their needs, problems they faced, and the impact that was created."