In the past it was more common for organisations to have people who actually knew the systems and also had business/domain knowledge. Many old systems were terrible but at least they knew them, the data, business processes etc. We were able to get a lot done in a small team because we knew what to do and there was someone around who could give immediate answers.

These days nobody knows anything and everything is a meeting next week. Tasks are just offloaded to random devs who just try to do something that matches their ticket, usually doing it again next week because description was flawed. We have countless meetings with client's product owners and such who can't give any clear answer with enough details to write actual code.

So then we schedule a new meeting and they try to figure it out, usually coming back with still inadequate response. And the cycle repeats.

Often systems have their own providers and clients don't even know how they work or have sufficient access. That means involving another party and complex organisational processes where every message needs to run thru 5 people.

Just an example, we couldn't get a feature working and after hours and hours of debugging we were sure the problem lies in bugged implementation of database procedure. Noone had access to see it since it ran on external providers environment. After 2 weeks of bouncing emails back and forth they silently fixed it refusing to show the actual code. In the past we'd ask the sysadmin (or whatever the title was) to pull up the code and we'd look at it together to figure out what's wrong.