HACKER Q&A
📣 Blahagun

How do companies decide who is a senior developer?


I have 18 years of professional experience with developing software. I have been employed with six companies through these years and had a three year stint working on my own company. I recently applied for a job, where they offered me a developer position, although they had an opening for a senior developer position. What exactly are most companies looking for a senior position? Is it mostly the way you sell yourself? Because even with my years of experience I have never put a label on myself as a "senior". I always thought that this is implied.


  👤 tpmx Accepted Answer ✓
I've never worked in a company where we put labels like that on individual developers. It was implied and earned by reputation.

(But I've only worked in companies with less than 1k employees in the nordics.)


👤 nighmi
Every organization differs, of course, making this difficult to usefully answer.

I have always prefered seeing senior devs as capable of architecting and implementing solutions (better yet delegating parts to juniors) such that they can launch a product themselves, where a mid level dev can launch individual features but would struggle with the complexity of choosing both an auth model and a persistence layer for it (mixing well with other persistence uses) and then what the front end should look like overall, and whether to use websockets or... and a junior can fix bugs, or work on tickets/scaffolded tasks in a productive manner.


👤 paktek123
So normally companies interview and judge your level based on how you perform in the interview. It is good to be upfront about this if you think you should be senior and they put you as non senior, ask why they put you as non senior.

👤 stefanos82
OK, here's my personal hypothesis, as I have no idea what are each company's credentials for such title, but here we go:

If, for instance, you have 10 years of professional experience in a specific tech stack, let's say front-end development, you have mastered your craft, and you deliver faster than your deadlines, my personal opinion this should sound like a senior developer's level of expertise.

I could be wrong though, but I'm talking from experience that I have discussed such topic with acquaintances of mine.


👤 abramN
demonstrated expertise in one or more domains, can guide other professionals, sets and enforces standards, knows how to manage up and communicate to stakeholders, IT project management knowledge

👤 BizarroLand
A good chunk of i is down to luck and negotiation ability, how you sell yourself to a potential employer.

👤 mcraenich
All good answers, but I'll also add in 'failing upward'. Some people get promoted because of social dynamics, not skill level.

👤 tj-teej
The other thing to remember is that a Senior Developer isn't just a moniker for the best of the developers, it's a different job.

A Sr Dev should have a different job description, different expectations and be held to different standards.

Now who get's chosen/hired for those roles is a different story...


👤 DLion
In my experience, years of professional experience != Seniority

You could have been for 18years in a company where you were the senior just because you were the only one who knew how the old monolite work. You could have been for 18years in a company without knowing more than what you were just doing. This just to say that the seniority it's not something you obtain with your years but with the experiences and situations you find yourself in and especially what do you learn from them.


👤 GoToRO
They want loyalty. Loyalty for them means just time. I saw a lot of "loyal" people that were pushing the company into the ground.

Basically you forgo any income increases that you get when you change companies for the remote possibility they will make you senior someday. You also get some money.


👤 sneed_chucker
Software engineer titles are largely meaningless.

The same title can mean totally different things at different companies.

You typically get "leveled" by a company based on your resume, years of experience, and interview performance. Sometimes companies intentionally under level you to try and pay you less than your fair market rate.


👤 peruvian
Senior titles are largely BS. I had coworkers that got a Senior title at age 26 simply by job hopping. Others had to wait till 30. The responsibilities between us were the exact same.

👤 galdosdi
Here's how it really works usually at non-tiny companies:

1. You negotiate a salary when interviewing. 2. If they like you at that salary they make you an offer 3. HR assigns you whatever title corresponds to the salary band that contains the salary you happened to manage to negotiate, as per HR's list of salary bands.

In other words, in theory, the system is supposed to look like they go find an engineer, figure out if they're senior based on interviewing them and other signals etc, and if they're senior they get the senior rate.

The reality is the opposite-- they just figure out whether they want you bad enough to pay the rate you want, and then, if so retroactively justify it as corespondening to whatever HR says they have to call you back I justify that salary.

So for example, this makes it easy to end up with a senior who is more 'junior' than a non senior, if 'senior' was hired when the job market was very hot, while the 'junior' who is actually more experienced was hired during a slow market.

Title indicates salary, not the other way around!


👤 muzani
It's just relative. Senior means you're representing the CTO and entrusted with whatever product needs. Non senior means you're not. Higher than senior is an inflationary term to give the illusion of progress when a company has been around long enough but they can't demote the people hired as senior to non senior.

👤 leandot
Some random ones:

  - thinks about the bigger picture, scalability, future maintenance, technical debt, documentation, testing, security etc.
  - can see possible edge cases and how to handle them properly
  - can do research alone and reason why X and not Y, can justify why X is better even though management really likes the Y buzzword
  - unblocks non-senior developers in case of problems
  - can communicate with product, marketing, sales, etc.
  - doesn't complain in case of issues or messy code, but fixes them
  - builds tools that help the whole company, not only the current task

👤 borplk
Lots of thorough answers but I'm just going to say the simple thing.

If you have 18 years of professional experience in anything, you are senior. It's not that complicated and at that point it doesn't matter what the company is.

Not that it automatically makes you a brilliant developer. But at that level of experience you can't consider someone as junior or mid. It's senior or above.