The increasing use of AI in software development has led to significant changes in the industry, with 62% of developers now utilizing AI tools. While this has enhanced productivity, it has also resulted in greater code complexity and a decline in code quality. Recent findings from the 2025 GitClear AI Code Quality Research report reveal alarming trends: as AI usage rises, so does the duplication of code, leading to more time spent on refactoring rather than creating new code. This shift indicates a troubling pattern where the ability to manage and simplify complex systems is becoming more critical than simply writing new code. In this discussion, we will explore these challenges and the importance of maintaining high code quality in an AI-driven environment.
The landscape of software development has notably transformed in 2024, with 62% of developers now leveraging AI in their workflows. While this integration has significantly boosted productivity, it has also raised concerns regarding code quality and complexity. The discussion reflects on findings from the recent 2025 GitClear AI Code Quality Research report, which analyzed over 211 million lines of code and revealed a troubling trend: as AI usage increases, so does the complexity of software systems. Developers are now dedicating more time to refactoring existing code rather than creating new features. This shift highlights a critical issue in the industry: as AI generates more code, it often leads to duplication and violates the fundamental principle of not repeating oneself. Consequently, the reliance on AI tools may inadvertently increase maintenance challenges and bug vulnerability, requiring developers to adapt their roles and focus on system-level understanding and refactoring expertise to ensure sustainable software development practices.
Takeaways:
Links referenced in this episode:
Hello and welcome to Software Architecture Insights.
Speaker A:Your go to resource for empowering software architects and aspiring professionals with the knowledge and tools they require to navigate the complex landscape of modern software design.
Speaker A: e has shifted dramatically in: Speaker A:A whopping 62% of professional developers used AI in their development process.
Speaker A:This has done wonders for the productivity of an average software developer and has led many people to assume this means that either we need fewer software developers or more likely, we can get more and better software developed with existing staff.
Speaker A: ast year I read and loved the: Speaker A:I wrote on this topic last year in my newsletter.
Speaker A: The: Speaker A:This report shows that as AI usage has increased from last year, the issues with the developed code in large and complex systems have continued to increase as well.
Speaker A:In short, as AI is used more and more in the software development process, we've seen a corresponding increase in complexity and code size.
Speaker A:The result?
Speaker A:Developers are spending more time refactoring code and less time writing new code.
Speaker A: The: Speaker A:For the first time in recorded history, the frequency of copy pasted lines exceeded moved lines in code repositories.
Speaker A:More code was copy and pasted, then moved in code repositories.
Speaker A:This represents a fundamental change in how our industry builds software.
Speaker A:Why exactly is this true?
Speaker A:Well, when a developer moves code, they're typically refactoring it, rearranging existing functionality into more reusable modules.
Speaker A:This is the hallmark of good software architecture and something that all but the greenest developers do routinely.
Speaker A:Unfortunately, it's also something that AI software agents almost never do.
Speaker A:You see, code that is copy pasted represents duplication which directly violates the dry or don't repeat yourself principle that has guided professional software development for decades.
Speaker A:The more duplicated code your application contains, the greater its complexity and the more vulnerable it is to bugs and other problems.
Speaker A:The more you use duplicated code, the harder it is for developers to understand the code, the larger the code base and the more susceptible it is to future problems.
Speaker A:Experienced software developers recognize this.
Speaker A:Novice developers and AI coding agents do not.
Speaker A:The numbers are significant.
Speaker A: % of changed lines in: Speaker A:The rate of code reused has plummeted from 25% to to 10% in just three years.
Speaker A:Meanwhile, code duplication has soared.
Speaker A:Code duplication has seen an Eightfold increase alone.
Speaker A:But why do AI agents generate duplicate code?
Speaker A:The root cause isn't really all that difficult to identify.
Speaker A:Today's AI coding systems excel at generating code quickly, but they operate with significant limitations.
Speaker A:First is limited context.
Speaker A: ost popular code assistant in: Speaker A:This means it can't simply see enough of the code base to identify existing functions.
Speaker A:It should reuse or refactor also a path of least resistance.
Speaker A:EI tools are optimized to suggest solutions that work immediately, not solutions that integrate elegantly with existing architecture.
Speaker A:The tab key that inserts suggested code becomes a tempting shortcut that bypasses thoughtful design.
Speaker A:When organizations measure developer productivity by lines of code or commit counts, they inadvertently encourage behavior that prioritizes quantity over maintainability.
Speaker A:Inserting larger quantities of code is actually encouraged rather than discouraged by most developer metric systems.
Speaker A:Even as software developers report greater productivity when using AI tools, software defect rates continue to rise.
Speaker A:This brings us to the evolving role of the professional developer as AI takes over the mechanical aspects of code generation.
Speaker A:Human developers are finding their unique value in areas where AI currently falls short.
Speaker A:System Level Understanding While AI can write discrete functions or even entire components, they lack the capacity to understand the full architectural context of a system.
Speaker A:Humans excel at their ability to identify patterns across disparate parts of the code base and understand the business domain logic it represents.
Speaker A:AI systems do not.
Speaker A:Refactoring Expertise Humans have significant expertise in code refactoring, that is the ability to restructure existing code without changing its external behavior.
Speaker A:Humans are good at consolidating duplicate blocks into reusable functions, creating well named and well documented modules, and establishing canonical implementations that can be reliably tested and maintained.
Speaker A:They also can identify opportunities for reuse that exist across modules and across systems.
Speaker A:Humans can detect and address technical debt.
Speaker A:They are good at finding and fixing problems deeply embedded in systems.
Speaker A:They can examine complex systems and identify patterns that lead to quality issues.
Speaker A:Humans can detect and address technical debt and design comprehensive strategies for improving test coverage.
Speaker A:Finding the Right Balance this isn't to say that AI code assistants aren't incredibly valuable.
Speaker A:They undeniably accelerate the overall development process.
Speaker A:The key is finding the right balance that leverages AI strengths while mitigating its weaknesses.
Speaker A:In order to thrive in this AI centric AI enabled developer world, modern organizations must first adjust metrics.
Speaker A:They must move away from measuring productivity by lines of code or raw commit counts.
Speaker A:Instead, organizations should track metrics that approximate long term maintainability costs, such as duplication rates, test coverage, and defect frequency.
Speaker A:2.
Speaker A:They have to allocate time for refactoring, Build dedicated time into sprints for consolidating duplicated code and improving system and application architecture Managing technical debt and decreasing complexity will become more important as more and more AI generated software is included into our systems and finally, value system knowledge.
Speaker A:Recognize that understanding the entire system and its architectural patterns is increasingly the most valuable skill a developer can bring to your environment.
Speaker A:Experienced engineers have vast system knowledge that is invaluable to organizations in managing their code base.
Speaker A:The Future of Development we're entering a new era where the most valuable developers aren't those who write the most code, but those who excel at organizing, refactoring, and simplifying complex systems.
Speaker A:It is imperative that the measures we use to track developer productivity be adjusted to address this change, or we will continue down the path of more complex and more risky application code.
Speaker A:We risk getting into a situation where we can no longer manage the complexity of all of the code we have asked AI to create for us.
Speaker A:Yes, in the future, AI tools will be built that will help address these limitations, but for now, the human ability to refactor, simplify and consolidate remains critical.
Speaker A:And as it turns out, even more critical than our ability to even write new and original code.
Speaker A:Turns out, the developer experience is worth its weight in gold or even more valuable, its weight in GPE cores.
Speaker A:Thank you for joining us on Software Architecture Insights.
Speaker A:If you found this episode interesting, please tell your friends and colleagues you can listen to Software Architecture Insights on all of the major podcast platforms.
Speaker A:And if you want more from me, take a look at some of my many articles@softwarearchitectureinsights.com and while you're there, join the 2,000 people who have subscribed to my newsletter so you always get my latest content as soon as it is available.
Speaker A:Thank you for listening to Software Architecture Insights.