If you can’t code, you shouldn’t manage coders. If you’re not a lawyer, don’t run a law firm. If you haven’t been in charge of a class of kids, you shouldn’t run a school. And that’s despite the day-to-day of these management roles not touching code/clients/kids.
The experience gained in a few years on any ladder is enough to appreciate most of how people in those fields think.
Have you ever tried working for someone who didn’t have relevant experience? You get people deciding that they don’t need an issue tracker, let alone a code repo. You get people who think paying Google 5 bucks a months is not worth it, they’d rather have their own email server. And it’s not that there’s never a case for having your own server, it’s that the case is never made in a technical way (eg we want security / uptime / whatever). The techies end up having to translate complex reasoning into something a layman could understand, or at least pretend to. A lot of time is wasted explaining things. And then when there’s feedback - and most people cannot resist the temptation to act like they’re contributing - it only makes sense to the non technical staff, while the tech people are trying to implement whatever crazy modification it is they’ve been given.
What these people tend to do is to make everything a management issue. So management, just like politics ends up having its own ladder. Relevant experience for being a health minister is to have been an MP. Relevant experience for managing a code department is having managed the interns.
It massively corrosive to let this continue.
And before someone makes this argument, it's perfectly possible for techies to do the managing and politics.