The role of a software developer is in transition – and it’s all thanks to the impact of artificial intelligence (AI). It’s now clear that generative AI models and assistants, such as OpenAI’s GPT-4 and Microsoft’s Copilot, are adept at producing code almost instantly in any language and for any purpose.
This technology-enabled capability means software developers face budget cuts. The main debate right now is: “how much?”
The current verdict from industry observers: So far, so good.
But there are mixed reactions when it comes to whether it will help developers fill or displace many of their roles.
It could even serve to pave the way to application modernization.
Also: AI at the Edge: Fast Times for 5G and the Internet of Things
“Generative AI is dramatically transforming the way developers approach their roles and heralds nothing less than a revolution in productivity,” said Joe Welch, president and technology leader of Launch Consulting, a division of The Planet Group. “By incorporating GitHub Copilot into VS Code for a recent project, we saw programmers reduce ten-minute tasks, such as writing a small function, down to the 30 seconds it took to simply write out a comment describing the function. was explained. because the functions are written by Copilot, and often these functions work out-of-the-box without any changes required. It’s hard to understate what a game changer this is.”
While generative AI tools can replace much of the headache-breaking work of developers, the rise of these technologies also opens up opportunities to expand their role within their organizations. In short, budget cuts in an age of AI and automation may not be a bad thing – and could lead to new, more interesting roles.
Also: Oh, now AI is better than you at fast engineering
Right now, the industry is buzzing with the power and productivity that generative AI platforms bring to the software development profession. “For many developers, generative AI will become the most valuable coding partner they will ever know,” according to a report from consultant KMPG. The technology can finally help overworked and stressed IT professionals abstract from the more mundane aspects of their work and help them focus on bigger problems that are more relevant to their business.
At a basic level, this means the ability to deliver larger amounts of project work. The increasing use of AI will “make developers more interchangeable between frameworks, platforms, products and systems of record,” the authors of the KPMG report indicate. “Generative AI will provide the foundation and guidance they need to work on a wider range of projects than they can normally handle.”
Also: Do you want a job in AI? These are the skills you need
But an increase in productivity is just the starting point when it comes to the future impact of AI and automation on jobs. The increased adoption of generative AI will also mean that developers will be expected to act at a higher level, bringing together AI-delivered resources to meet business demands. “What’s becoming increasingly important is that developers can clearly articulate how they want a piece of code to perform,” said Mahesh Saptharishi, chief technology officer of Motorola Solutions.
“A good user story should give AI the right information to get to the answer you want, while knowing how to ask questions and test results,” says Saptharishi. “As the speed of translating a user story into a feature or a product increases, agile methodologies will need to adapt. In many ways, descriptions of what software should do in the form of user stories may become the new code.”
This shift in emphasis will lead to a retrenchment that means actual programming roles will diminish, and more business-oriented developers will focus on assembling the capabilities they need for particular applications.
As technology evolves, “I believe that human programming skills will necessarily fade away and eventually be replaced by human-driven engineers,” predicts Duncan Angove, CEO of Blue Yonder.
For his part, Angove expects actual programming roles to shrink, and more business-oriented developers to gather the capabilities they need for particular applications. As technology evolves, “I believe that human programming skills will necessarily fade away and eventually be replaced by human-driven engineers,” he predicts.
“Business analysts and product managers will be the new prompt engineers, translating business needs into prompts that generate the code we need. In the short term we will still need programmers to check the quality of the code, but in the long term that will also fade away.”
Also: six skills you need to become an AI prompt engineer
Of course, some sense of perspective on the magnitude of these cuts is also crucial. Developers won’t use AI to write entire applications overnight, says Saptharishi: “AI will help developers do their work faster and make fewer mistakes, and over time AI will play a bigger role in app development. An intensive environment, IT professionals’ creativity, problem-solving skills and ability to train and explain concepts to others will continue to play a key role in their success.”
A potential showstopper for actually generating code – rather than helping developers be more productive in the process – is the legal implications of freely using code that was essentially designed elsewhere. “Intellectual property issues surrounding generative AI remain unresolved,” the KPMG authors warn. “These models are trained on open source code, with many different types of licenses, and it remains to be seen what will happen if the software they generate is too similar to open source code.”
Also: Okay, so ChatGPT just debugged my code. Real
While it is highly debatable what kind of cuts there will be for developer roles, Launch’s Welch foresees many positive impacts on developers’ ability to deliver results much faster and more efficiently for their increasingly demanding businesses:
- As a recommendation engine: A key benefit will be “integrating AI recommendations into the code development process or providing AI recommendations on code check-ins,” he says. “GitHub Copilot is a great example of this, offering recommendations and suggestions as developers type. Developers can also indicate the code they are trying to write in a specially formatted comment and Copilot will provide a sample implementation of that feature.”
- Create documentation for existing code to help new developers: “We used AI to provide top-level summaries of subsystems and then more detailed descriptions of individual modules,” says Welch. “After reading these overviews, the developers can then interact directly with the AI chatbot to ask detailed questions about the use-specific features or parts of the code. This can significantly reduce the overall time it takes to understand a new codebase shorten.”
- To update outdated libraries: “One of our ongoing challenges is keeping third-party libraries up to date with supported versions, in accordance with applicable security guidelines,” says Welch. “Often the level of risk when upgrading these libraries is unclear. Generative AI is excellent at predicting overall effort, identifying specific code patterns that need to be adjusted, and helping to ensure that these libraries and frameworks are kept up to date with the latest developments. as little effort and business risk as possible.”
- To migrate applications from older languages: “AI can greatly facilitate the migration of a large codebase from an older language like Cobol to a more modern language like Java or C#,” says Welch. “These migrations can often be challenging because they require developers who are fluent in both the older and newer languages.”
Also: This new technology could blow away GPT-4 and the like
But let’s be clear: the cutbacks in software development in an age of AI and automation are already happening. Ultimately, there will be plenty of opportunities for developers and other IT professionals in “things that can’t be easily copied or learned,” Angove predicts. “Think about what big language models can’t do, and do that. The value of new thinking becomes even more valuable, too. Develop skills that help build the tools – LLMs themselves – versus the now free applications.”