I'm currently a backend engineer at a start-up company. This is my first backend job and I have been working there for over a year. Since joining the company, I have inquired about the career path as a backend engineer since I would like to set some goals for myself. However, both my manager and VP of engineering said that it's "in the works" and they will let me know when it is completed.

It has been over a year now and with the pandemic, everything is at a halt.

I want to get promoted. When I have 1-1's meetings, I always ask how am I doing and what are the things I can do to improve. The answer is always the same, that I doing great, picking up things fast, and willing to learn new things.

I want to work toward senior in a few years and would like to ask you all, what is the gap of knowledge between mid and senior? What is expected from a senior software engineer?

  • "Senior" is just a title and doesn't have any definite meaning. What are you really after? More money? More responsibility? Just having the title to add to your resume? Be clear with your manager what you really want and ask for those things. It would be unusual for a start-up to have a clearly defined career ladder.
    – Seth R
    Commented Oct 29, 2020 at 16:24

5 Answers 5


While different companies have different definitions of positions (anecdotally, my employer uses a total of 8 levels instead of the customary 3), there is a fairly common consensus about what it means to be a junior/medior/senior.

  • Juniors can do their tasks, albeit with some help or guidance
  • Mediors can do their tasks
  • Seniors can do their tasks and have time for either assisting juniors or further improving their output quality

This isn't a hard line, of course. Some difficult tasks will have mediors or seniors needing to cooperate as well - asking for help doesn't immediately downgrade them to a junior position. The bullet points are more of a guideline for what you can expect during day-to-day tasks.

There are of course other considerations as well. You'll generally expect a senior to know more than a medior; but whether that is counted using the variety of tech stacks a dev knows, the depth of knowledge on individual tech stacks, or ancillary project managing abilities; is up to the company to define.

The answer is always the same, that I doing great, picking up things fast, and willing to learn new things.

This feedback isn't indicative of what level you're at. It's indication of progress on that ladder. In other words, they're saying that you are making progress, and there are no particular things you're doing that are impeding your progress.

Medior and senior level come with time. While it usually aligns with how long you've been doing the job, this is not a hard and fast rule. Some developers may be actual wunderkinder who shoot up the ladder, and others may evolve more slowly or experience a slower progress. This can be due to either aptitude, bad guidance from others, lack of motivation (either from yourself or others, personal life intervening in their career experience, ...

In short, there is no hardset track to define your progression from junior to medior to senior. It's a matter of how the company defines those levels, and how they observe your handling of the tasks that were assigned to you.


Being a senior software engineer isn't about tech. It doesn't matter how many languages and tools you know. Its about ability to design and implement large pieces of architecture, the ability to mentor younger programmers, and the ability to lead technical projects. The first is technical skills, but its not about individual tools- its about understanding abstraction and problem decomposition. The other two are soft skills- the ability to teach, the ability to work with others, the ability to do a bit of project management.

If you have 2 out of 3 of those you can reach senior. Obviously all 3 is better. Only having 1 is problematic- it can happen, but you better be VERY good. If the only one you have is team leadership a switch to management or product management may be in order.


It's called "career development", not "job development". It will last longer than your current employment, it's something you have to own and you're going to have to set your own goals. Both technical and otherwise.

Given this is your first backend job, I would just focus on technical improvement for now. There's a lot more to software development and to advancing in our industry, but that will come later. You're at the start of a long journey.

If you work hard at your technical improvement, it's highly probabal that your value in the market will rise faster than your salary and you'll have to quit. So I wouldn't worry about your company's internal processes unless your current position isn't allowing you to practice the skills you need to technically improve.


I always ask how am I doing and what are the things I can do to improve.

In general, I would expect a senior engineer to be primarily driving their own improvement and to take ownership of improving some aspects of the team as well. When you are planning, do you occasionally provide insights that result in the plan changing for the better? Do people seek you out for your expertise in certain areas? Do you have days where you spend more time helping others with their work than on your own? Does management frequently accept your recommendations about when or how to do things? On the technical side, are you occasionally fixing bugs that stymied others? Are you introducing new technologies or techniques when appropriate?

It can take a while to get there, and there's nothing wrong with that.


In almost all cases you need to change companies to move ahead firmly and swiftly.

This is a career basic.

Facts and figures:


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .