Recently, Amazon CEO Andy Jassy revealed that by leveraging Amazon Q, the company was able to save 4,500 developers-years of work. "Yes, the number is crazy, but real," he posted on X.
With Amazon Q, the company has significantly cut down the time needed to update Java applications. "The average time to upgrade an application to Java 17 plummeted from what's typically 50 developer days to just a few hours," he said.
He added that in under six months, the company has been able to upgrade more than 50% of its production Java systems to modernised Java versions at a fraction of the usual time and effort. "Our developers shipped 79% of the auto-generated code reviews without any additional changes."
"The benefits go beyond how much effort we've saved developers. The upgrades have enhanced security and reduced infrastructure costs, providing an estimated $260 million in annualised efficiency gains," he claimed.
Indeed, generative AI has made coding a breeze. Tools such as GitHub Copilot, Devin, and Amazon Q simplify the development process, making application creation easier and helping developers and enterprises reduce technical debt.
Technical debt arises when an enterprise rushes a product to meet deadline requirements without properly checking the code quality and debugging. Incomplete documentation and insufficient testing can lead to errors and inefficiencies that add to the debt.
Converting Legacy Code Base
Amazon is not the only company reducing technical debt with AI. San Francisco-based Databricks, which uses generative AI to quickly analyse and understand its legacy code base -- something its CIO says has eased the burden on engineers.
Seventy-five-year-old payroll-processing company ADP is also looking at generative AI to convert COBOL to Java. "A big problem that we, and other legacy companies face is that we have COBOL running in our systems," said Amin Venjara, the chief data officer of ADP. He added that today, very few programmers are familiar with COBOL.
The Roseland, NJ-based company is exploring the use of generative AI to convert its mainframe code from COBOL -- a language developed in the 1950s and still widely used in banks and financial services -- into Java, a programming language that has been around since 1995.
Wayfair, the online furniture retailer, is using generative-AI-based coding tools to update old code. Though Wayfair, established two decades ago, does not use COBOL, it does have "legacy code" in languages such as PHP and outdated database code in SQL.
Additionally, there is code written by developers who are no longer with the company.
GenAI to Assist in Tedious Tasks
Generative AI acts as an intelligent assistant that automates tedious tasks, suggests improvements, and enhances code quality. Armand Ruiz, the VP of product at IBM, says that his favourite use case for generative AI is in software development.
According to Ruiz, GenAI has several use cases in software development. It can convert plain English instructions into code in the preferred programming language.
Code translation tools convert languages like COBOL to Java, and facilitate code modernisation and migration. Bug-fixing tools identify and suggest fixes for code errors, thereby enhancing code reliability.
Notably, IBM recently announced the IBM watsonx Code Assistant for Enterprise Java Applications, expected to be generally available later this year.
Generative AI also plays a significant role in streamlining code maintenance through refactoring. Generative AI automates refactoring by suggesting or implementing code transformations. It can identify common anti-patterns and propose more efficient alternatives, ensuring that refactoring adheres to coding standards and best practices.
Generative AI Tools are Shaping Software Engineering
Recently, AI coding tool Cursor AI has been generating buzz on social media.
OpenAI co-founder Andrej Karpathy praised the AI-integrated code editor, saying, "Programming is changing so fast... I'm trying VS Code Cursor + Sonnet 3.5 instead of GitHub Copilot again, and I think it's now a net win."
"Just empirically, over the last few days, most of my 'programming' is now writing English (prompting and then reviewing and editing the generated diffs) and doing a bit of 'half-coding', where you write the first chunk of the code you'd like, maybe comment on it a bit so the LLM knows what the plan is, and then tab tab tab through completions."
Previously, software engineers used to take a substantial amount of time to deliver a product, but now this has drastically decreased. GitHub recently launched Models, a playground which will offer developers access to leading LLMs, including Llama 3.1, GPT-4o, GPT-4o Mini, Phi 3, and Mistral Large 2.
"With GitHub models, developers can now explore these models on GitHub, integrate them into their dev environment in Codespaces and VS Code, and leverage them during CI/CD in Actions - all simply with their GitHub account and free entitlements," explained Github chief Thomas Dohmke.
Then, there are AI software engineers like Genie and Devin. Genie is designed to emulate the cognitive processes of human engineers, enabling it to solve complex problems with remarkable accuracy and efficiency. "We believe that if you want a model to behave like a software engineer, it has to be shown how a human software engineer works," said Alistair Pullen, the cofounder of Cosine.
Learn to use AI Tools if you are a Software Engineer
"Software development companies will start hiring coders who can demonstrate in interviews that they master AI-assisted coding tools like Copilot or Cursor," said Andriy Burkov, machine learning lead at TalentNeuron.
He added that claims that LLMs can't write reliable code are immature. "Most junior and mid-level coders can't write reliable code either. This is why software engineering has, over decades, equipped itself with automated and semi-automated tools to ensure that code is production-ready."
He further explained that LLMs are already being fine-tuned specifically for coding. Companies are investing hundreds of millions of dollars to enhance these LLMs' coding capabilities because, if executed correctly, coding is the only use case where they can charge $10 or even $100 per million tokens from corporate clients.
One issue that the developers face is the belief that AI-generated code may contain bugs. Many AI startups are emerging to address these concerns. One such startup is YC-backed CodeAnt AI.
CodeAnt's AI-driven code review system can significantly reduce vulnerabilities by automating the review process and identifying potential issues before they reach the customer.
With advancements in AI-driven coding tools and platforms such as IBM watsonx and GitHub Models, there is no doubt that developers are now better equipped to handle legacy code, streamline code maintenance, and enhance productivity.