Aaaah yes, middle management. The successes are always of their own making, but the failures are always blamed on the devs. Shit rolls downhill. The worst is the situation when there's no buffer between IT and Business (ideally a person well aware of the constraints and requirements of both) and the person you report to is a "bizbro".
I once had such a manager, who managed our small dev team, but he was not a coder, he didn't have any IT background, he was a dude with business background... and the depth of which he was able to understand the business logic of our systems was on the "typical user" level (i.e. he used the systems, but had no idea what amount of work would additions and changes in these systems require). This person reported directly to our CEO. So of course we would spend obscene amounts of time on trash features which were complex to incorporate into the existing structures and most of which provided questionable business value in the end (i.e. a feature took 6 "man months" to develop and integrate, but its added monetary value to the business was probably similar or lower than that). Because of these bs jobs coming from the top, we were swamped with questionable work and our core systems and features stagnated. At the same time, hiring more people - adding to the IT team - was out of the question because we were already "so expensive". And so this person came up with a genius idea of offloading one of our core systems to an external entity (so we have more time to spend on his questionable tasks). I mean, fair enough if you do that while being well aware of all the business logic and make a calculated decision, but this person (and I don't want to be too specific here) basically went behind our backs, told the ceo something along the lines of "hey, we're gonna offload system X to entity Y for Z amount of money, so our IT has more time for other important stuff" and then, once everything was a done deal, came to us that we're going to integrate Y. Long story short, we spent about 2 years (on/off) on replacing our X to work with Y, tightly integrating it with Y's api (and that company in general), having around a dozen of 2-5 hour meetings, Y updating their system like 10 times so it even does what our system X did 5 years ago and spent a crap ton of money on all of this (easily more than new hires would cost). Why would it take two years, why wouldn't we cut our losses? Because sunk cost fallacy and because the manager couldn't admit fault to the ceo. We were going to do this because it was his idea.
I once had such a manager, who managed our small dev team, but he was not a coder, he didn't have any IT background, he was a dude with business background... and the depth of which he was able to understand the business logic of our systems was on the "typical user" level (i.e. he used the systems, but had no idea what amount of work would additions and changes in these systems require). This person reported directly to our CEO. So of course we would spend obscene amounts of time on trash features which were complex to incorporate into the existing structures and most of which provided questionable business value in the end (i.e. a feature took 6 "man months" to develop and integrate, but its added monetary value to the business was probably similar or lower than that). Because of these bs jobs coming from the top, we were swamped with questionable work and our core systems and features stagnated. At the same time, hiring more people - adding to the IT team - was out of the question because we were already "so expensive". And so this person came up with a genius idea of offloading one of our core systems to an external entity (so we have more time to spend on his questionable tasks). I mean, fair enough if you do that while being well aware of all the business logic and make a calculated decision, but this person (and I don't want to be too specific here) basically went behind our backs, told the ceo something along the lines of "hey, we're gonna offload system X to entity Y for Z amount of money, so our IT has more time for other important stuff" and then, once everything was a done deal, came to us that we're going to integrate Y. Long story short, we spent about 2 years (on/off) on replacing our X to work with Y, tightly integrating it with Y's api (and that company in general), having around a dozen of 2-5 hour meetings, Y updating their system like 10 times so it even does what our system X did 5 years ago and spent a crap ton of money on all of this (easily more than new hires would cost). Why would it take two years, why wouldn't we cut our losses? Because sunk cost fallacy and because the manager couldn't admit fault to the ceo. We were going to do this because it was his idea.