I remember one of first post ideas for this blog back then, 4 years ago. It was about choosing people to promote them to management roles. I’ve never published the post and I’m glad about that. A few years ago I didn’t know about hiring and promoting managers more than typical decision maker in IT companies now.
I knew nothing.
During these few years I’ve met a number of managers who should never be promoted to any position which touches leading people whatsoever. I mean they were great engineers once. But engineering, and software development isn’t an exception, and management are two different things. They don’t even rhyme with each other. So why the hell do we keep promoting our best engineers to management positions?
Vast majority of best developers I’ve met were crappy candidates for managers. They were thinking in terms of code, not in terms of people. And a manager isn’t the go-to-guy when you have a technical problem. (The guy is called Google by the way.) A manager should work with people, not with code, architecture or build server. Yes, the transition is possible. Hey, if someone is willing to pay me real money for managing people it is some kind of proof. But the switch is painful and time consuming. And unfortunately most of the time it just doesn’t happen.
We end up with a lot of people around who are still good-to-great engineers but crappy managers. And we let them lead. Then, when we need to promote someone even higher we have basically no good choice. And we end up with a bunch of managers-by-accident all over the organization. As a side effect you lose your best brains when it comes to engineering.
Skills required to be technical leader and people manager are so different it is highly unlikely that your best engineer is also your best candidate for a manager. You can safely assume your engineers aren’t different. Why should they?
If you want to offer your best engineer management position, rethink it. Twice. Is it possible you do it because it is exactly how things were done around for years? Is it possible you’re going to lose great developer and gain crappy manager instead? Is it possible to find a better candidate within the team or outside?
If the answer is triple yes, and surprisingly often it is so, you’re doing wrong thing. I would even say that sometimes it’s better to let your great engineer go than to make him a manager. Of course if he is a crappy candidate for management position.
24 comments… add one
One trick I’ve used to gut check the engineer that wants to be a manager … get them do management-like things. Ask them to put together a business case via PowerPoint to convince a senior management to spend some money on a new dev or testing tool. Ask them to present a recent technical solution to business people and convince them of the awesome-ness in business terms. Have them give a walk thru of something they just put together for a senior manager who isn’t very technical (asking the senior manage to throw management challenge questions at the engineer ahead of time). Basically ask them to get out of their comfort zone and do something management like and then get them feedback. I bet they re-think their desire to be a manager if they don’t find these tasks rewarding.
Pawel, I’m with you on this. As you have noted software development and management are two different things and different skills are required (first thing needs more technical ones, second is looking for “soft” ones in my opinion). One thing that you can do before promoting person directly to PM you can give him more responsibilities in his team at first, i.e. putting him as technical or team lead (positions with some development work as well) just to check how he can handle new duties related to people management. Then next step could be moving him to PM.
Paweł, you’re right about the different set of skills required to be a manager compared to these required to be a top engineer, but I see another issue there. The best engineers promoted to managers tend to forget that they were the best not (only) because of a gift from God but because of continuous learning.
Even if it happened that promoted engineer has all the prerequisites to be a good manager he is likely to fail due to lack of will to learn how to manage. From reasons not known to me management is considered unlearnable using classic techniques like reading books, talking with more experienced managers or attending conferences.
Like I said before, I would love to be managed by a guy who attends a conference on management from time to time. I must admit that I doubt I have all the required traits to be a good manager and I, knowing this, I don’t urge to become a manager. But it is sad I suppose I have deeper and wider theoretical knowledge about project management and team leadership than most of managers working in my company.
Absolutely agree. However in many cases it’s much better to promote someone with technical experience to manage other (technical) people. It’s much easier to manage project when you know the problem from your own experience.
This is the Peter Principle at work (http://en.wikipedia.org/wiki/Peter_Principle). The promotion probably has more to do with wanting to keep a valued employee, pay them more money or simply reward excellent service; nothing to do with the suitability for the job. This type of promotion causes 2 problems: the unit is managed poorly; the manager is unhappy because they usually know they are doing a poor job and they are no longer doing what they are good at.
John,
You’re right on one thing: people (developers) rarely understand what it takes to be a manager and if they understood they wouldn’t be willing to get to management path so willingly.
However decision about promotion isn’t in the hands of promoted candidate but in the hands of someone in senior management. Let’s face it: if someone is offered management position 9 times out of 10 they’d agree, no matter what. I can’t think of more than a couple of people who actually rejected promotion to management position even though I know bunches of people who didn’t really wanted to manage and much, much more of those who didn’t suit to management at all.
That’s why I don’t consider this problem to be mainly about developers who don’t understand what management really is, but more about decision makers who have wrong criteria when they choose candidates for promotion.
And these decision makers should already know what this whole management thing is all about. Heck, they’re managing teams for years already.
Tomek,
I thought about technical leadership for some time already. It depends how you define it but for me a technical leader is for example chief architect – someone who doesn’t manage people or deal tasks among teams, but is the person you go ask when you have really tough technical problem or you have to set up some technical decisions which affect pretty much everyone.
In these terms being a technical leader doesn’t help you much to become people management. Actually an argument I pointed in the post (about technical leadership versus people management) is all about that: these are two different stories and they don’t reinforce each other.
If I wanted to test a candidate for a manager I would look more for a typical people management position but the one which is rather informal and temporary. It may be something like leading a project team in one project or running a small R&D project or something like that. If it doesn’t work you just cancel it and there is no problem of crappy manager.
Szymon,
You wouldn’t like me as your manager though. I haven’t attended any conference about management. What more, I don’t agree that theoretical recipes are the best means to become decent manager.
I know quite a lot managers who, once promoted, put significant effort to learn about management. They read a lot of books, they attended management courses and sometimes even had coaches. And suddenly they had answer ready for every problem. Unfortunately these answers were most of the time wrong.
People management isn’t about techniques, practices and recipes. People management is about dealing with people and every person is different. You can’t just take all your management experience from past teams and directly apply it to you new team. It won’t work.
Currently in my team there are exclusively people who I worked with in my previous company. But our relationship is completely different that 2 years ago. Even with the same people but in another environment management can’t be the same.
I agree with you on the goal. If you’re manager you still have to learn like crazy. You have the power and (usually) you can take it for granted. But basically after promotion you know about management even less than you knew about development back then when you were intern. If you’re OK with your skills on intern-level, fine, but don’t complain you aren’t considered as a true leader.
Karol,
There was time when I believed someone with subject matter expertise but lack of managerial skills would trump a good manager with no or little technical knowledge. There was time when I thought the other way around.
Now I think there’s no rule. You should consider each situation individually. If I don’t have ideal candidate at hand, one with both technical knowledge and management skills, I would look for someone with potential. First, potential to become a true leader and second potential to catch on with subject matter. In this order.
Remember the first thing for a manager is to manage (or lead, but that’s a different discussion). And if we talk about the most typical case we talk about managing people. Now if a manager sucks at management technical expertise won’t help there much, if at all.
What more, I believe that leadership should be spread over the team. There should be folks who are leaders in terms of technical aspects of team’s job. Architecture? Fine, there’s guy who is a leader in this area. GUI design? Another person has the biggest knowledge in the area. Testing? Ask our QA lass. She’ll tell you. (I’m stealing this example from yet to be published Jurgen Appelo’s book; you should consider buying it once it’s in bookstores).
And technical knowledge isn’t something teams usually lack. Leadership is.
Sandy,
I think despite of Peter’s Principle some people are promoted even further, no matter they reached their level of incompetence. You’re right about motivation for these decisions. But I also see some developers strongly willing to become managers without understanding of specifics of the job. Pretty often they don’t consider themselves as poor managers after, even though it harms their teams and organization as a whole.
I think that this is absolutely true, and that good engineers that become crappy managers are very unhappy.
Once “manager” becomes just another job, and not necessarily better and more payed job, people will reject becoming managers and strive to be better at their professions.
Vukoje,
Once being a manager becomes just another job with no extrinsic incentives we will have huge deficit of candidates for management positions.
But besides money and prestige which draws people to management there is one thing you wouldn’t change just by making manager role “just another job.” Power. Management is inseparably connected with power. And some people want to become managers to get this power.
Anyway, I don’t believe the way we look at management will change anytime soon. It’s not going to be just another job.
I agree again. People are drawn by power and management will continue to be powerful job title.
This is the source of many many many problems. Still, once engineers become masters of their destinies and are entrusted with technical decision, they will no longer strive to management positions… at least I won’t :)
Well, I follow this path and I can feel the difference now.
It’s obvious, an Engineer at the beginning of his management adventure without any preparation cannot be called Manager at all. Sad but true. He is just and still the Leader, that’s all. It takes time so it is better to have someone that help you pass (Szymon, I’ve got someone for you If you change your mind).
Please consider why our top management promote best engineers instead of engaging top class experienced managers? First look at statistics. There are lots of engineers at CEO positions in Polish companies. I mean, no organization can rise above the constraints of its leadership. Second may be willingness to change. Outsider always comes with “NEW”.
Paweł,
I use a different notion of leader and leadership than you. I think most of engineers promoted to management positions suck at leadership even more than they do at management. But that’s just a side note.
I don’t say there aren’t good candidates for managers among engineers. There are. I boldly consider myself as one of examples. But more often than not, the best engineer in the group isn’t the one who is predestined best to lead the team.
You point CEOs who came from engineering as one of reasons of the situation. Well, I can agree but only to some point. In every but small company decisions about promotion aren’t made by CEOs, but by middle and/or senior managers. The source of “evil” isn’t on the very top of the organization but somewhere lower. On the other hand these are C-level execs who steer company culture, something which is followed by decision makers in middle and top management.
If the company was always about promoting top engineers, or those with longest tenure, middle management will play by the same rules. It is a safe choice. After a while it spreads all over the company and you could bet who will be promoted to a manager in this or that team even if you personally don’t know any team member.
However company culture doesn’t prevent you to use different theme in your team. At least most of the time it doesn’t. So you can’t blame C-level executives for everything.
You’re right with one more thing. Outsider always comes with The New. And there will always be some status quo defenders but usually there’s also a group of supporters of the change. With a bit of luck they are among top management too, which can create pretty good position for a newcomer.
most likely sounds like a truth. I would still discuss about values what makes technical person the best. I can’t imagine best guy to have lack of communication skill, willingness to learn and self motivation. And if such guy (with those skills) has intense to become a manager, then why not? it is upon the company if they can afford junior manager or not. Of course the one must learn a lot of things, but it can be achieved. To become a great manager, one can fail. There are needed more skills, like leadership and best tech guy is not a leader by the definition.
in conclusion: it is not so bad thing if company and the one is ready. Peter Principle is the rule and Joel Splosky (http://www.joelonsoftware.com/) is one of best guides to success :) I have seen good results already.
On the other hand your described problem usually exists in very small companies.
Simonas,
I didn’t try to say that there aren’t great engineers who are capable to become good managers. My point was that making a rule out of promoting best engineers to management positions is wrong.
Best engineers usually have skills you mention, even though I can think of a few pretty damn good engineers whose communication skills were challenged, but they are still far from decent starting point for management position. I believe we agree on this one.
Now there is nothing wrong in promoting great engineer for management position if both sides are willing to give it a try and the candidate seems to be capable to go through transition. Unfortunately the latter condition is rarely fulfilled. Then it ends up wrong for both sides of the deal.
One more thought, I’m not against giving chances to folks who are willing to become managers. Heck, I wouldn’t be one if someone didn’t give me opportunity to lead. I just think most of the time we create these opportunities to wrong people.
Is it only in sales that the top performing people can easily make more than their ‘managers?’ Is that a situation we should have in other companies as well, to provide incentive for the best engineers to stay in the career they mastered instead of seeing management as the only way to career success?
Kathleen
Kathleen,
To some point you’re right. I know few companies which can financially appreciate engineers more than their managers. But it isn’t really about money. At least not about money only.
I think it is power which draws people more to management than remuneration. After all in IT engineers earn decent money so purely materialistic motivation doesn’t play that important roles as in factories.
And there’s one more thing – it is pretty easy to pay success bonus to sales since when contract is finished you could easily count how much the person brought to the company. You don’t have such mechanisms working for engineers.
Software engineers make great pets. I would promote all of them to the top for great answers.
Being that I’m currently in a middle management position in an engineering department in a tech company, where I have both supervisor and subordinates. I appreciate seeing best engineer rose through the rank to upper management than mediocre ass-kissing engineer getting promoted because they go out and drink with upper management every Friday night and weekend. I cannot stand when these engineers fail to do their assigned task, but always have the time to come sit in my office and ass kissing me about my kids or whatever they think that might help them with their promotion.
Every Monday morning meeting, I stress the quality of work needed to be deliver to our clients/custmers and always praise my best engineers on their ability to solve difficult problems. I emphasis on hard-work, constant pursue for knowledge both technical and business related, and teamwork. My top 10%, I give them the most challenging work and reward them on their success. I push them to help their middle tier co-workers to improve up to their standard, so that I can help in them in their promotion to the management position when an opportunity presents itself. The bottom tier, I give them the least complicated tasks that needed to be done and hope that one of them will one day want to break out of that routine and ask for something more challenging. Sadly these bottom tier always looking to do the least work and constantly ass kissing about possible promotion. My top 10% always work their butts off, and I only see them in my office outside of project related concern once a year discussing raise or promotion. I’m more than happy to help and assist any of my 10%, when the topic comes up.
My final thought is that top engineers don’t just become top engineer for doing nothing. They work very hard in front of you and behind you. They don’t go around taking credit for work that they didn’t do or frequently tooting their horn. They know and understand the value of teamwork and helping others around them succeed. They will point out their value to the company, which all employees should do. The 10% are the people I look to promote. I have plenty of these people that used to work for me and are now working at my level and some are even higher than me. I would never put a non-technical person in a management position in any engineering division in a tech company. That is just asking for trouble. But again, I couldn’t see why anybody would want an engineer running their marketing or sale department either.
@David – If you boil down management skills to kissing ass of your boss then I’m totally with you. A problem is it is either ultimately the worst definition of management skills or close enough to the worst.
One interesting observation in your argument is that you focus on how much of technical challenge a task is and who has technical skills to deal with that task. Being in management role you seem to look strongly through the perspective of technical tasks.
Another observation is that you seem to interpret promotions and raises as symbols of self development and growing.
Obviously these things are heavily driven by organizational culture of your company. This is how things are done there and this is what people expect in that very context.
The thing is that I fundamentally don’t agree it is the way to go. And yes, this is an opinion and not the ultimate truth. It is though backed up by success stories of a number of organizations that decide to go against more than a hundred year old hierarchical management paradigm. See stories of companies like Morning Star, Semco, WL Gore, Zappos, GitHub, etc.
What’s more what research on motivation shows is that we are very strongly intrinsicly driven and in the context of knowledge work traditional structured carrot and stick approach doesn’t work. Even worse it yields negative results. Read Dan Pink’s Drive or see his story in a pill here: http://www.ted.com/talks/dan_pink_on_motivation?language=en
The point I’m making here is that obviously organizational culture is something what defines what does it mean to be successful in a company. The thing is that local culture is not everything there is and looking broader may be a significant improvement.
At the end of the day if the only choice you have is between a good engineer and an ass kisser I’d point that either the organizational culture is heavily screwed up or you are not looking deep enough.
So, will you be paying your technical talent more?
@Guy – “More” assumes a comparison. More than what?