Skip to Main Content

The true impact of generative AI on software development

You’ll hear a lot of hype around how Generative AI (GenAI) tools can make developers more productive. Some consulting companies even provide specific percentages of increased effectiveness. But I think there’s more to the story than “write more code faster.”

While GenAI tools can aid in understanding syntax and expressing ideas more efficiently, developers typically work within a single technology stack for extended periods. This makes claims of substantial productivity increases unlikely, as coding itself is only one part of the overall development process.

Even if the numbers themselves are accurate, though, there’s a flaw in the thinking behind them. The majority of experienced developers' time is not spent typing code but rather thinking and effectively expressing concepts related to the business domain they are working in. GenAI tools can help developers write more lines of code faster, but coding faster doesn’t mean delivering faster speed to value.

That doesn’t mean there’s no value in GenAI for developers, however. While these tools may not necessarily make us faster at coding, they do offer several important and useful benefits.

GenAI important and useful benefits

One significant advantage is the ability to learn new technologies more quickly. The learning curve for new technologies is shortened when leveraging GenAI tools like Copilot.

GenAI tools enhance developers' understanding of existing code bases, which can significantly speed up the time required to comprehend complex code structures. Copilot’s “explain this” functionality provides a contextually relevant explanation of code, without the distraction of leaving the editor.

Recently, one of our teams utilized Copilot to navigate a legacy code base and bolster it with tests. The team was pleasantly surprised to find that Copilot generated about 80% of the tests that the engineers would have typically created for similar circumstances. This assistance accelerated the process; however, Copilot could not be solely depended upon for every test scenario. In most cases, like this one, combining GenAI assistants with experienced human engineers who understand the context of the business and domain was the best of both worlds for efficiency and accuracy.

Especially if used as a supplemental tool for independent problem-solving, GenAI can enhance learning and encourage self-reliance. This is particularly important in remote work settings, where independent problem-solving skills are crucial. By encouraging developers to formulate solutions independently before checking with the tool, GenAI can be a valuable learning aid.

Curious about GenAI tools in software development?

GenAI risks to developers

As with any tool, there are potential downsides. Depending too heavily on GenAI can hinder the development of critical thinking skills and discernment among developers. Like giving students all the answers to a problem, constant reliance on AI-generated code solutions may inhibit true learning and problem-solving capabilities in developers.

Additionally, while these tools can provide valuable feedback on code and improve efficiency in certain aspects of development, they may not revolutionize the production of code as a whole. Relying too heavily on AI-generated code runs the risk of reproducing unmaintainable or suboptimal code prevalent on the internet.

Taking all of this into account, I’m convinced that GenAI tools have the potential to reshape development practices and enhance learning opportunities for developers. However, it is essential to approach their use thoughtfully and be mindful of both the benefits and possible drawbacks they may entail

Curious about how we’re using GenAI tools for developers at TXI? Contact turley@txidigital.com

Published by Patrick Turley in Software Engineering

Let’s start a conversation

Let's shape your insights into experience-led data products together.