views:

2077

answers:

8

From career perspective, I see Software Engineer evolving into Project/Product Manager or Architect, what characteristics/personality traits help Software Engineer to decide which role is more suited for him ?

+3  A: 

How much do you like (are are able in) being in constant, close touch with stakeholders (e.g., marketing, customers, &c) to determine the tradeoffs of feature sets, project cost, time to delivery, and the like? A PM will be very often doing such things, while an architect should only need less-frequent such meetings and contacts. Vice versa, how much to you like (and are able in) picking system architectures, technologies, internal division of products into subsystems, etc? That's not something a PM should get all that involved in, but it's definitely the architect's daily bread.

Alex Martelli
+12  A: 

Do you want to design or manage?

What do you really enjoy?

Do you like solving puzzles, looking for patterns, then an architect would make more sense.

Is the technical part of the job of less interest, and you are more of a people-person?

Where do you want to be eventually?

A manager will interact more with the business types, so if they are interesting, and that is the path you want, then management would be best.

James Black
+9  A: 

I'll give you another career growth option: entrepreneur/business owner. For the risk tolerant, this one can be infinitely more satisfying than PM or architect.

Asaph
Thank you for suggesting other very good option.
Rachel
+1  A: 

The software architects (or lead software engineers) and project managers I've seen drew from a similar set of personality traits. Aside from raw talent and capability I'd say the following traits distinguish successful people in the two roles.

The more effective project managers I've seen are self-confident, and not controlling or anal. They are ok with not knowing the answer, and self-confident enough to delegate the work. They are also assertive enough to ask tough questions. They also seem to like people.

Some of the best lead/senior/chief software engineers I've worked with and who worked for me shared a strong sense of curiosity, and a strong need to get something right and prove their capabilities. Their self-worth is usualy tied strongly to the software they produce.

Steve Roe
+6  A: 

Don't assume that it leads to anything. A brilliant software engineer may have the talent to become a great project manager but may also very likely make a piss poor project manager. It depends much more on your given talents than it does on how long you've done anything. Don't let yourself get 'promoted to your level of incompetence'. Instead, if you're good at what you do, look for more lateral movement: ie, better pay, better pick of the projects your work on and the technologies you work with.

If I were an IT/Development manager (which I am), I would certainly not want one of my best engineers being promoted away from what he/she does best. But I'd certainly be willing to give them money and quality of life improvements to keep them doing what they're good at. That's what you should aim for.

If you're not terribly good at being an engineer and you think you'd be better at a project management role, right out of the gate, tell your employer that you think that. If they're smart, and they are able to see the talents that they value in a project manager, they should certainly consider a 'trial period' for such a role.

Promotions to different positions that require different talents because of 'natural progression' reasons almost always end up becoming an abysmal failure.

edit> With respect to vertical career growth and a little more explanation.

In my company at least, vertical growth comes from 1 consideration:

  1. Does the person posess the talents (not knowledge or skills, we can teach them those things) that we value in a person that will fill that role.

All of our management looks closely at all of our employees constantly trying to identify these talents. Sometimes we get it wrong, but as a whole it works quite well.

It should be noted: If someone is consistently doing terrible at their job (even with training and help from management), and they don't have the talents to be very productive in another position: they're fired; very quickly. We see this as an error on our part of the selection process and we strongly believe that someone in this position is doing an injustice to themselves to stay at that job and would be better served being fired and finding a job that suits their particular talents better.

On the flip side, we find that people who are great at what they do and are rewarded for it are much happier in their work and are much more likely to not want to move to a different position.

For instance, in another department we had a telemarketer who was quite poor at the job, but had the talents desired to manage that department. She was promoted to be the inside sales manager and the whole department's bookings increased significantly (and consistently) as a result - likewise, staff retention in that department is at an all time high. Additionally, it should be noted that this new manager doesn't (yet) make more than some of the people she manages. People are paid a wage that reflects their work performance. (My current position, which I'm told that senior management couldn't be happier with, is also a result of a process very similar to this).

In one case, it took a particular person (our current receptionist) to move through 3 different positions in the company until we found the right fit. She's quite awesome and makes one of the higher wages in the company. Another person went through 3 positions (which could be perceived as promotions) and was canned soon after.

We're not adverse to paying someone like a telemarketer, which are historically low paying positions, $50,000+/year if they're worth it (two of which are 4-6x better than any other person we've ever had in that position - and they've been at that position/wage for upwards to 10 years). If any employee needs something to make them better at what they do (new desk, new keyboard, new phone, new headset, books, software, whatever) it's almost always no questions asked, it'll be ordered by the end of the day.

SnOrfus
But does it not mean that Good Software Engineer will or say should not move further up the corporate ladder to expand his or her career growth ?
Rachel
Can you share some insight on Vertical Career Growth as compared to Horizontal Career Growth ?
Rachel
Career growth is a bit different from career movement. Growth in a developer position means we will buy you any learning resources (books/software/hardware) that will make you a better developer. Or management training/books/etc. to make you a better manager. Our philosophy is that you can't 'outgrow' your position, but you can get better at it - and rewarded accordingly.
SnOrfus
+2  A: 

Do you like working with people or technology?

  • If you like working with people, be a project manager. Being a manager will lead you to deal with people alot. Be it your boss, your staffs or even your customer. A manager does not necessarily need to know in-depth about technology.

  • If you are more challenged dealing with bleeding edge technology and all of the issues behind it and found yourself enjoying it, then be a software architect.

jpartogi
A: 

There are some related questions whose answers are worth reading:

Among others, there are also teaching and consulting for a couple of other professions besides being a manager or architect. Granted that the consulting may be anywhere in the software development spectrum of requirements gathering, design & analysis, implementation, testing, support or maintenance so there can be some variety there.

JB King
A: 

There are a lot more project managers than architects out there. The jobs are also incredibly different; one involves designing technical solutions, and one involves managing others.

If you're not yet able to figure out which is better suited for you, the answer - for right now - might be neither. Wait a bit, figure out which one you'd love to do more, and train yourself towards it.

Dean J