| I'm more on the "managers need technical knowledge" side of things, but I think there is value in the professional manager. Imagine you need someone to help support a team of compiler writers. The kind of support is mainly protecting the team from too much bullshit above, and also just making sure the team has what it needs (someone's gotta get those chairs for them). How much compiler experience do you need? It definitely helps to know about the constraints of development (difficulty in measuring project length, need for longer periods of concentration), but apart from "street cred" coming from importing within, there's a good argument that someone who's managed across multiple industries will be good at absorbing the right stuff to manage well. OTOH, if you promote from within, you might be getting someone with good potential. But they likely won't have management experience, and their job changed from "ship this product" to "make sure the team doesn't implode (also ship the product)". If you have the slack to handle the learning curve, it's good. But hiring experienced people for a job is useful. 100% agree abut absorbing lessons though. When you start off with a certain mindset, it takes a while to absorb a new one. But your job is to make the company run well, not to be an advocate for whatever you learned at school |
I think that's much more sensible than taking somebody who doesn't know much of anything, putting them in an MBA program, and then expecting them to have universal management mojo. So we're not talking about somebody who has managed across multiple industries. We're talking about somebody who, often, has managed across none.
I really don't believe managers from other industries can, on average, manage software teams. I thin software is too different from other kinds of labor. So many behaviors that are arguably reasonable in other industries are clearly catastrophic in software.