The biggest problem of Agile is that there is no budget for minor refactoring. Refactoring becomes a massive effort to either account for the time or substantiate the changes administratively at sacrifice to some business priority.
At that point any refactor is the automotive equivalent of a recall. That’s unfortunate because when the right processes are in place enormous refactors on even large applications can be an effort shorter than a sprint planning meeting.
Agile is just a way to apply a) constant pressure, b) not plan too much, and c) explode your T&M.
It's really good for a consultancy to churn through developers whilst billing hourly / daily, but less so if you want to build a product, or actual productivity.
That's not to say there's nothing good about agile, but when your average team consists of a Delivery Manager constantly applying pressure and Product Manager with no tech skills deciding what gets worked on, it's immediately obvious nothing actually changed.
Despite what Agile wants to be what matters most is how Agile is in practical application. Speaking from more than 15 years of doing this at many employers it's an administrative tool to bind effort to project management... and nothing more.
I am not saying whether Agile is good or not, but there are better approaches that can yield faster trajectory with lower defects. Its a trade off between automation/autonomy versus administrative oversight.
agile had a lot of promise, though is definitely biased towards working with external devs, but in practice, in my experience, is boils down to the DM and PM roles turning the team into a feature factory 9/10 times.
That said, it isn't really about agile, it's about the specific people, and how suddenly adopting some framework doesn't really change them or their incentives.
At that point any refactor is the automotive equivalent of a recall. That’s unfortunate because when the right processes are in place enormous refactors on even large applications can be an effort shorter than a sprint planning meeting.