Career progression

Software Engineer career progression in tech industry.

IC vs Manager (Tracks)

There are typically two tracks for software enigineers: Individual Contributor (IC) and Manager.

All software engineers start out on the IC track, where your main contribution is the inidividual work (code, architecture design, etc.) that you produce.

As you progress to more senior levels, you might be offered a chance to convert to the Manager track, where your main responsibity shifts to managing the team.

Career Progression Levels

Tech companies usually have well-defined levels for software engineers, along with the responsibilities and requirements at each level (job model).

Example: Backend Engineering Roles at GitLab

Promotion to a higher level usually requires habing a certain number of years of experience (yoe). While yoe is not an absolute requirement, having an idea what level you should expect with a certain amount of years of experience can be helpful in gauging how well you are doing relative to your peers with similar yoe.

Different companies have different number of levels and naming conventions. Here are two examples of how it might look like:

Example A

Junior Software Engineer → Software Engineer → Senior Software Engineer

Level Title Typical yoe
3 Junior Software Engineer 0
4 Software Engineer 1-2
5 Senior Software Engineer 5
6 Lead Software Engineer 7

Example B

Software Engineer → Software Engineer || → Senior Software Engineer

Level Title Typical yoe
5 Software Engineer 0
6 Software Engineer || 1-2
7 Senior Software Engineer 5
8 Staff Software Engineer 8

Terminal Level

It is important to understand that this mapping only works up to a terminal level (typically Senior Software Engineer), where you are no longer expected to get promoted to the next level. This is also where significant career progression stops for the majority of people.


Next: Mid Level

Subscribe to receive latest updates