Possible Duplicate:
What does the suffix after software engineer/developer job titles mean? (i.e. Software Developer III)
work advancement titles

I've been struggling to understand job hierarchy in software engineering.

The system is further complicated because of the lack of consistent naming conventions when assigning roles: for example, some companies just have a "senior software developer" position while others have Software Engineer I, Software Engineer II, Software Engineer III, and so on.

Even in the top level positions, we have things like "Principal Software Engineer" vs. "Staff Software Engineer".

What is the standard hierarchy for software engineers? Is there a generally accepted pecking order?


5 Answers 5


Wikipedia gives a good overview of corporate titles and under the hierarchy for Information Technology companies you have the following:

  • Chief Executive Officer
    • Vice President
      • Senior Project Manager / Senior Product Manager / Senior Software Architect
        • Project Manager / Product Manager / Software Architect
          • Project Lead / Senior Team Lead / Senior Technical Lead
            • Module Lead / Team Lead / Technical Lead
              • Senior Software Engineer / Senior QA Engineer
                • Software Engineer / QA Engineer

While each company will have it's own naming convention and resposibilities for a role, they do seem to fall within this basic hierarchy.

Hope this helps you out some.

  • I concur there isn't a standard, but this answer comes closest to answering the question in my mind.
    – neontapir
    Commented Nov 1, 2011 at 4:33
  • Wait, no juniors? Commented Nov 1, 2011 at 12:23
  • 11
    I disagree with the notion that "managers" of any sort are somehow "senior to" engineers. This conflates reporting structure with seniority, and doesn't reflect actual practice in any company I've seen.
    – TREE
    Commented Nov 1, 2011 at 13:56
  • 1
    I don't think that they're implying that 'managers' are senior to 'engineers' but that as you go up in the hierarchy they're on par with them on each level. As in a Senior Project Manager has equal responsibilities as a Senior Software Architect and equal ability to dictate specific things in their area of specialties.
    – Chris
    Commented Nov 1, 2011 at 15:38
  • @chris: Your answer is exactly what I wanted to know. Just one more thing..I understand that Principal/Staff Software engineer is different from Software Architect. Does one have more seniority over the other?
    – tunafish24
    Commented Nov 2, 2011 at 2:27

There is no standard hierarchy of software job titles. Titles are peculiar to each company. If you have a question about a job title there's no point in asking anybody except that company.

  • 3
    Job titles have the most impact on billing rates, and promotion/reviews. Even when "standardized," actual responsibilities vary substantially by company and by team within company, due to corporate cultural issues.
    – Jeff Grigg
    Commented Nov 1, 2011 at 2:01
  • Peculiar? Surely you mean particular? ;) Commented Nov 1, 2011 at 13:08
  • @Kezzer, from the "New Oxford American Dictionary":2 [ predic. ] (peculiar to) belonging exclusively to: the air hung with an antiseptic aroma peculiar to hospitals. • formal particular; special: any attempt to explicate the theme is bound to run into peculiar difficulties. I chose it deliberately because I also wanted the allusion to the first definition of peculiar, "odd or unusual" because I've seen some pretty odd job titles. Commented Nov 1, 2011 at 14:19

At Microsoft, the titles are:

  • Software Development Engineer (two internal levels, 59 and 60)
  • SDE II (61 and 62)
  • Senior SDE (63 and 64)
  • Principal SDE (65 and 66)

At Google, there are senior titles like Staff Software Engineer and Sr. Staff Software Engineer.

At Apple, there are titles like Software Engineer I to Software Engineer V.

See also: What is the difference between these senior software engineer titles?


Job titles only have meaning within a specific organization sometimes only within a small section of that organization. In general they are only useful in assessing the "Dilbert Co-efficient" of your current employer.

Also be careful with the title "Engineer" in some countries its illegal to use the title unless you are an accredited member of the local Civil/Electrical/Electronic professional body. "Software Engineer" doesn't count for much with "real" engineers.


There is no global standard for designations or i assume no one has made one till now. Its good to have guidelines for design, naming convention but the code has nothing much to do with the designation of the person writing it.

The one you have mentioned would be company specific and you can think of them as levels in a game where in you play at one level, gain experience and points/life and then qualify for the next level. This part pretty much is same all over, so the more you play the better you get and higher the chances of going up the levels but then as its is for all games the rules are different and so in this case its the company.

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