Artificial intelligence has shown itself to be capable of generating, testing, and deploying software code.
Tools, such as ChatGPT, can write code and even fix bugs, as explored in a recent article by ZDNET colleague Liam Tung.
What does this emerging breed of intelligent automation mean for developers’ roles in the months and years to come?
The good news is AI — combined with DevOps — may mean a greatly enhanced developer experience, and perhaps free up a lot of bottled creativity.
The rising importance of developer experience — and why this has become a thing — was dissected and explored in a recent webcast joined by DevOps luminaries. They say the future of DevOps, and thus developers’ roles, is being enriched by artificial intelligence, low-code, and no-code technologies.
Also: What is ChatGPT and why does it matter? Everything you need to know
“Humans are not good at spending large quantities of time looking at the same thing over and over again, but computers and machine learning are very good at that,” says Lee Atchison, software architect and author on the topics of cloud computing and application modernization.
The implications for DevOps going forward are compelling. “This is one of the most interesting times that I’ve seen since I’ve been involved with DevOps,” says Hope Lynch, senior director of platform and technology strategy for CloudBees. “Part of it is the impact of AI, machine learning, low code, and no code. All of these things are of converging at the same time on developers. People are also now thinking more about the experience for developers. How are they actually connected to the business? They’re not the developers in the backroom anymore. They’re now part of how business is done,”
Machine learning and AI “should be the headline of any discussion about the future of DevOps,” says Atchison. The productivity implications of DevOps combined with AI can be enormous. “Having tools like that that can help us scan the reliability of our system before it becomes an issue is going to become critical. I think machine learning and AI is going to become critical, not only from the development standpoint — we’re just seeing the beginning of what could happen there — but also on the operations standpoint. DevOps has really enabled us to have thousands and thousands and thousands of releases a day. Amazon does what, one every 11 seconds? That’s a lot of code that’s being deployed to our applications, and more and more, they are sitting across companies through SaaS, cloud services, etc.”
Also: I used ChatGPT to rewrite my text in the style of Shakespeare, C3PO, and Harry Potter
What are the implications for software developers, then, with more and more AI, linked to DevOps, handling vital functions through the software lifecycle? “I see there are developers saying they’re using AI as a coding partner,” Lynch says. “They are using it to come up with additional ideas, to find shortcuts. It’s not that it’s replacing them, and they don’t have blind faith in it. But it is helping them have access to a wider category of ideas faster.”
Atchison adds that “nothing is more hyped nowadays than ChatGPT. But in the end it’s not a tool to replace people, but help perform some types of tasks,” he points out. “One of the things AI is good for is analyzing large quantities of data to look for anomalies. Then those anomalies can be viewed by humans to figure out what’s going on. With thousands of releases going out each day, there’s no way we could reliably predict if all of that is accurate. So one good use of machine learning is to do the scanning, to look for anomalies or changes on analytic data that have been to correlate them to releases.”
Also: Businesses need DevOps to be competitive but must follow best practices to minimize risk
It gets to the heart of why developers are hired in the first place — for their creativity, says Parag Doshi, vice president of engineering at Tricentis. “It’s not for someone to examine a billion test results on an application. This year, people are going to be tightening their belts, they’re going to be rationalizing their applications, they’re going to be rationalizing how much time they can spend building an application, testing an application, and how efficiently they can continuously deploy it. We’re going to have to become smarter, and AI is another tool that will allow us to devote more time to the areas we were originally hired to do.”