Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

After some googling I was unable to find out hierarchy of different titles in career development. Especially the connection between Senior Engineer and Software Specialist is unclear to me. Which one is higher? Most of all I would like to see links pointing to some career development paths from the trainee to the highest boss, and what kind of different routes there are including technical and managerial paths.

share

migration rejected from stackoverflow.com Dec 3 '13 at 0:00

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as off-topic by MichaelT, GlenH7, Bart van Ingen Schenau, Robert Harvey, Dan Pichelman Dec 3 '13 at 0:00

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, GlenH7, Bart van Ingen Schenau, Robert Harvey, Dan Pichelman
If this question can be reworded to fit the rules in the help center, please edit the question.

    
comments disabled on deleted / locked posts

1 Answer

up vote 28 down vote accepted

The Short Version:

There is no industry standard for these things, they're specific to each company and in some cases won't even be consistent within a single company.

The skills and abilities that make someone a developer in one company might mean that they're a senior developer in another company, and a technical architect somewhere else.

The Longer Version:

Broadly speaking large numbers of different job titles are an indicator of a large company, frequently one which either doesn't specialise in programming, started out in an area other than programming, or in some cases started it's life some time ago in a period when companies were far more hierarchical than they are now.

Smaller and more modern companies on the other hand can frequently encompass hundreds or even thousands of employees with maybe four or five titles (something along the lines of developer, senior developer, development manager, technical architect, and chief technical officer).

But you shouldn't confuse your job title with your career development. Here there is a common thread to the way many people will develop though there are still plenty of exceptions.

Typically you'll start out as a developer (though you maybe called a trainee, or a junior developer or a programmer or whatever), making small changes, bug fixes and doing support. Over a year or two you'll move on to more substantial work, though still very much hands on, picking up new skills and increasing your competence and experience.

Somewhere around five years in (maybe a little more, maybe a little less), people will often start to wonder what next and there are a few options. First they can stay technical and start moving towards being a senior programmer which will involve programming but also mentoring and looking at how the team can do things better. In many cases this is where people will stay, happy in the role and not wanting to become more hands off or get involved in the politics of management. In other cases they may stay hands on but start taking on a few managerial tasks as a team leader.

Alternatives are moving into some sort of business analyst or project management role. I won't go into these here as it's outside the realms of this site but these are fairly common options and things where a few years programming experience can be a good kick start to a career.

Assuming that the person chooses to remain a programmer and wants to move on from senior developer, the options tend to be technical architect (that is remaining technical but looking at defining the solutions at a higher level, getting involved in requirements and technical platform selection and so on) or becoming a development manager (so actually managing a team of developers which basically involves doing whatever is necessary to have them deliver the work being assigned to the team).

And from there a small number of people will move to more senior management roles (in larger companies) and potentially into a CTO position and / or beyond. Once you've shown you've got the ability to operate at senior levels lateral movement (that is across disciplines) is far more common and you will often see people moving out of roles which are anything to do with technology.

But a few things worth noting:

  • There is no single route. I've seen people mess around as a programmer for decades and then just jump massively when they committed themselves and I've seen people get to CTO and then drop back down to be a programmer again. It's whatever works for you at whatever time of life you're at.
  • A lot of the opportunities to progress are around luck and the ability to identify opportunities and take them. You'll get luckier the harder you work and the more talented you are but just sticking around and plugging away is no guarantee of progress.
  • Seniority != happiness and in many cases seniority != more money. Programmers who like programming will frequently find themselves very unhappy in management roles, even where they do find themselves competent and capable in that position. You're going to be working for 40 or 50 years, happiness is a big factor so don't just assume that you want to climb the greasy pole for the sake of climbing it.
share
    
+1 - couldn't have stated it better (or clearer) –  Alan Jan 24 '11 at 9:14
    
I just thought to get some sense in to the title-hassle. Dunno if I can say I've got a promotion or no. But for everything else, you made an excellent post! –  user14224 Jan 24 '11 at 10:02
    
@user14224: if there is something about the new position that is "better" (i.e. better pay, or better work, or anything else that makes you happier in your day-to-day job existence), then yes, you got a promotion. –  Wonko the Sane Jan 24 '11 at 15:00
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.