Agree that is a factor, but a small one.
> It feels like as a collective software engineers have lost their culture and everything is too complex to grasp so we build complexity on top of a misunderstood base, and everything falls apart.
Respectfully disagree here. Systems have been complex for decades. Who knows when the last time was a single person understood everything about their computer (with respect to both hardware and software)
The problem is simpler imho. Really it's just a problem of perverse incentives.
1. Coding schools / bootcamps are incentivized to churn out people branded as "senior" when they have a mere 6 months of practice.
2. Managers are incentivized to churn out "features" and "changes", built on tenuous connections to some half-baked customer research.
3. Engineers are pressured to "move fast and break things" while simultaneously switching between teams/companies for easy promotion, before getting a chance to fix the things they broke.
The list goes on and on. Basically there's this massive house of cards where everyone is incentivizing each other to do shoddy work and not be thorough.