Is a messy 1.5M lines of tightly coupled code best practice? Of course not. But it evolved over about 20 years and processes tens of billions of dollars of financial transactions. In my experience, it is archetypical of real-world software for a large successful company.
I use LLMs where I can and they're incredibly useful. But their limits are severe compared to a good human software developer and the shortcomings mostly revolve around their tiny context. Human neuroplasticity is still champion.
I work regularly with AOSP code (~3mn). While LLMs (Copilot w/ Claude Sonnet 3.7, in my case) cannot gobble all of it up, they have no trouble answering my queries, for the most part, from submodules. If nothing else, using LLMs has dramatically reduced the time it takes to understand a new code file / submodule / a range of commits.