I work in a small IT department in a non tech company. My manager recently quit and they are looking for a replacement. I guess since I'm one of those "rare" developers with people skills, the director is encouraging me to apply

Part of me wants to apply but another part of me says no. The pay and ability to make a difference sound intriguing, and I'm a little burnt out on programming after 12 years, but there are downsides too it seems. I'd be managing someone else who is very interested in the position and it could be awkward since he's a friend and currently higher on the ladder than me (along with a few others).

Has anyone else been in a similar position? Is anyone in management and happier or has anyone taken a management job and wished you didn't? Any feedback would be appreciated!

@Pratik: When managers worked for ex-employees in the companies that you worked for, did they give them any trouble?

EDIT: Thanks everyone for your answers.

While this seems like it might be a good opportunity, there are a few things that make me uncomfortable about this.

1) I would be responsible for EVERYTHING instead of what I am asked to do. The department is still reeling after several rounds of lay offs...overstressed and on the verge of burnout. I do have a pretty good relationship with everyone on the team....but I wonder if it wouldn't change if I took this job.

2) A couple of other co-workers despise the director for whatever reason. He might try to get me to do his dirty work and punish them if they butt heads.

3) Managing people who are older than me which doesn't seem to be an issue based on Codemwnci's post.

4) It's a small department and I really don't think a full time manager is needed. IMO we don't need someone to spend 50% of their time ordering people around (because everyone knows what they have to do) and 50% of the time doing nothing. The dept need more of a player-coach IMO. I think it would actually help the team because they would have another person to do support work full time (instead of having a support person write code like I'm doing now) if that makes any sense.
It is difficult but what I'm doing now is also difficult (development + support work)

I'd just hate to see them bring in someone from the outside that doesn't know what they're doing or ruins the team we have now which is pretty solid.

EDIT (4/30)

Your relationship with the rest of the team will change. You are now the boss rather than a mate. You will need to tell people what to do and they should do it. Some will be OK with the change, but others might resent that you've been promoted rather than them.

That could be a problem since I'm friends with most of them now.

In this case allocate some of the "easy" project tasks to yourself. These should be non-critical items that you can pick up and drop at a moment's notice. This allows you to help on the project, keep up with the code base but not get distracted from the managerial activities. Another thing you can do is field all the bug reports that come in. Check them out to make sure that they are real bugs and, if it's an easy edit, fix it straight away. Larger problems can then get scheduled in to the rest of the team's activities. This stops the team getting distracted and also shows the client/upper management that things do get fixed.

Sounds like a good strategy...

To me it comes down to which day-to-day activities you enjoy. Do you like coaching, meeting with people, project management, building rapport, and solving people problems? Or do you need lots of alone time, find meetings draining, dislike drama, and like intellectual/technical problems?

I can do both. The main thing for me is work-life balance. My old boss had work-life balance but only because he had dedicated employees below him that knew what they were doing, worked the extra hours, and made his job easy. Of course if someone else took over and the department was mismanaged, work-life balance for everyone could be out the window.

EDIT (5/1)

@Jeff

It's a corporate environment and I have no control in how many people we have or job description of each position.

I would hope that my fellow teammates would want me to succeed but I'm not sure. I made friends with some of them and surely this would change our relationship. But I'm not sure the other candidates would be able to run the dept and keep things running smoothly...although I could be wrong.

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.
If this question can be reworded to fit the rules in the help center, please edit the question.

9

Are developers with communication skills still that rare these days?
–
John ShaftApr 28 '11 at 7:17

11 Answers
11

You may think it is a move forward. It is, but in a completelly different direction. It is much like changing your occupation from carpenter to salesman. You need a different skillset and knowledge to do your work. Sure, it really helps to know exactly what your people do and what problems they face every day. But in my experience, it is a small portion of the job, let's say about 20%. Much more time is spent managing people (their needs and ambitions) and shielding those people from a lot of crap that upper management is producing in big numbers. Plus, you have to be very careful about what you do and what you say, because that might cause all sorts of damage (from making somebody upset to destroying the morale of the whole team).

The bad part is, I don't do much programming anymore. And I found out that I get much more pleasure from creating software than telling others what they should be doing. Also I get the feeling that my knowledge of software development is slowly becoming obsolete. Some time ago, I was struggling with some problems and I considered them hard. These days, I'm constantly being corrected. They are perfectly solvable with popular frameworks, so the problems are trivial. Everytime this happens, I smile, but my soul cries in despair.

You MAY be able (especially by discussion with your manager) be able to do the impossible, and get the best of both worlds - something I managed for a number of years - that is, to be a technical hands-on manager.

Yes, you do management stuff but you try and get the balance of doing about 50% management stuff (usually vague, short term thingies, firefighting, gazing into the possible future, or stuff that needs people problems to be sorted out). And about 50% being a hands-on developer.

There are many who will say "no no do not do this you must be one of the other".

It is difficult, but one of the things about managing people doing technical work is that if you don't stay in touch, you rapidly become technically obsolete - and then you can NEVER go back to being a developer (or it requires a massive drop in pay, and a long retraining period with a tolerant employer).

The only way to remain moderately in touch with the technology is to DO IT. All the books, courses, and waffle in the world are no substitute for the real thing.

So by doing (some) development you make yourself a better manager of technical work.

This is an outstanding answer. I have had the same experience when I first moved into IT management from a technical role. It was a small company and I was able to have the best of both worlds. I was very happy. However, as the company has grown and I have moved up the management ladder my time for hands-on work has declined to nothing and I don't like what I'm doing anymore at all. So my caution would be to watch as your company gets bigger that your hands-on time will go down with it and most likely your job satisfaction.
–
Dave KincaidApr 28 '11 at 13:33

1

Remember to delegate. I find a lot of new developers-turned-managers fail to delegate...end up doing way too management, not enough tech work. Delegate your meetings whenever you can. Delegate management work if someone in your team is interested. Find time for your tech work.
–
SwatiApr 28 '11 at 15:22

@Dave and @Swati - both excellent comments / advice. I was also pushed to make a decision: be technical or be management. (By small minded people above me). Not a good choice to have to make, but technical won the day. Losing the management responsibility after doing it for a number of years was not nice, though.
–
quickly_nowApr 29 '11 at 0:36

Caveat this response with, this is my experience, and I am but an individual, and you are most certainly going to be different to me. But, this is my story anyway.

I graduated, did very well, became a Lead very quickly and gained the respect of my peers due to my live of technology and willingness to learn outside of the job, keeping my skills fresh. It also made me excellent at my programming duties, as I practiced outside of work on personal projects. I quickly became 'the guy' in my department (of 20 programmers at the time). And then my manager left.

I became the manager, although I don't ever remember agreeing to do so?! And I stuck at it for 3 years. I managed the team pretty well. I was a techy, so they loved it, because they hated being told what to do, and how to do it by people who 'didn't understand them, or what they did/offfered'. I was also a lot younger than the rest of the team (I was 25), they were mostly 30-45. But that didn't seem to matter. the team was happy. And I was still doing a share of the coding, keeping my skills fresh.

Then the team got too big! I spent all my days in meetings and in one to one, appraisals. I rarely went home content, but often thought, "what have I done today?", apart from meetings.

6 months ago I applied for an Architect post in the same company, and got it. I go home content most days. Feel like I am adding real value and pushing the company forward. My Lead developer from my old team go my old job. He was a techie too. The team again were happy with the replacement, because he was a techie and a really good guy. But he has just stood down, back to his old position for much of the same reasons.

In my experience, good technical people, even if they are good with people, are good techies because they crave something about technology. About building things, creating software as an art. The only way I would go back into management, is if I could be at the position I was early on the management game, which was to still be hands on. It worked, everyone was happy, and the business go the best of my technical, and I got the best out of my team. As the team got larger, and I did no hands-on, everyone suffered.

Good luck with whatever you choose. I expect you will do well, as at least you are thinking about it rather than just seeing the money/power and jumping straight in.

+1 for: "good technical people, even if they are good with people, are good techies because they crave something about technology. About building things, creating software as an art". VERY TRUE. Many people take the manager position because they fear some idiot will be appointed who will ruin things.
–
quickly_nowApr 29 '11 at 0:40

Was in the same position. Took the promotion to management and I'm enjoying it very much.

I still do development, because I'm also one of the best developers, but it's been a good move. I'm happy to be doing something different now. While I love development, it was getting to be a grind and I wanted to see what else was available.

The best jobs I've had were working for good managers and I've learned what I liked about what they do and am trying to do the same. So far the team seems happy to have me in this role as I'm trying to keep them out of the typical corporate crap.

In my opinion, if you are a programmer who can also be a manager take it. If you don't someone who is less capable might take it. It is hard to find people with the combination of management and programming skills. Besides if your manager is encouraging you to apply he has that faith in you.
Managing someone more senior to you should not be an issue. It is part of your people management skills.
I have one suggestion for you though. Initially you will have some hopefulls unhappy. You have to put an end to all ambiguity as soon as you take over the role. Do that with a combination of you being responsible, delegating responsibility, following up and being firm with the team members.

I've been a developer and a manager. To me it comes down to which day-to-day activities you enjoy. Do you like coaching, meeting with people, project management, building rapport, and solving people problems? Or do you need lots of alone time, find meetings draining, dislike drama, and like intellectual/technical problems?

You'll be spending your day on very different work. So it's a matter of which day you'll enjoy and which one you'll keep wishing would end sooner.

Of course there is not right or wrong answer on this one. My experience is that I was promoted to a team leader (with line management responsibility for the team) of an electronics and software team. I managed to keep a good amount of hands on in this job and it suited me, I then moved out to do a Project Management job with another company and hated it. I am now back doing just development work someone else.

Of course you should bear in mind the Peter Principle and be confident that you can actually do the job and not be tempted too much by the money.

1) I would be responsible for EVERYTHING instead of what I am asked to do. The department is still reeling after several rounds of lay offs...overstressed and on the verge of burnout. I do have a pretty good relationship with everyone on the team....but I wonder if it wouldn't change if I took this job.

Your relationship with the rest of the team will change. You are now the boss rather than a mate. You will need to tell people what to do and they should do it. Some will be OK with the change, but others might resent that you've been promoted rather than them.

4) It's a small department and I really don't think a full time manager is needed. IMO we don't need someone to spend 50% of their time ordering people around (because everyone knows what they have to do) and 50% of the time doing nothing.

In this case allocate some of the "easy" project tasks to yourself. These should be non-critical items that you can pick up and drop at a moment's notice. This allows you to help on the project, keep up with the code base but not get distracted from the managerial activities. Another thing you can do is field all the bug reports that come in. Check them out to make sure that they are real bugs and, if it's an easy edit, fix it straight away. Larger problems can then get scheduled in to the rest of the team's activities. This stops the team getting distracted and also shows the client/upper management that things do get fixed.

I turned down a chance to become a team lead when I was barely a year into the Software Industry. I felt I was not technically experienced enough to take the post. Today, five years, and a domain change later, I am trying hard to get to the same post. I wish I had taken it then.

Would you have been capable of lifting the load back then?
–
user1249Apr 28 '11 at 12:33

2

Maybe, maybe not. I would only have known if I had taken it. I rejected it because I felt that a Team Lead should have at least 2 years of strong technical expertise. Without that, I would not have my team members confidence in me. I had good people skills and was a good communicator which was why i was given the chance. Actually it wasnt my first job. I had worked for one year before my graduation but it wasn't as a programmer.
–
DPDApr 28 '11 at 12:40

Just asking because I would on a first glance agree with you that it was a bit early to be the lead. I'm just wondering why it is hard for you now with five more years of experience?
–
user1249Apr 28 '11 at 12:50

I do get enquiries but when they find that my experience is split into different technologies and dommains, there is less interest.Recruiters typically look for someone with 6-7 years of experience in technology X only. When they dont get someone matching that requirement, thats when they call me back.
–
DPDApr 28 '11 at 13:01

2

I tend to agree - Team Lead after 1 year is too soon. I actually think a wide experience (a good grounding) of 5 or more years is a good thing before Team Lead is appropriate. Makes you a better, more rounded, more knowledgable person. Part of being a Team Leader is to coach, mentor, help others - not just dole out lumps of work.
–
quickly_nowApr 29 '11 at 0:43

You need to map out how you think the team should run and what positions need to be created, altered, eliminated and filled along with the qualifications. Based on the feedback you get, you're gut feeling will tell you if you want the job.

Another consideration is how much further in management do you want to go. See what everyone's expectations are.

Your fellow teammates should want to help you succeed or they have to go. Make sure you're clear about how you want to run things and let them decide if they want to cooperate.