DEV Community

loading...

Discuss: Do we need the "Senior" Software Engineer title?

scottshipp profile image scottshipp ・1 min read

For as long as I can remember, I have felt uncomfortable with the title of Senior Software Engineer. It started before I became a senior and continued after. The main problem I have is that the title is used in such different ways at different companies as to practically and realistically be meaningless. Senior Software Engineers at Company A may be no better than just Software Engineer at Company B. I've actually conducted some interviews for senior candidates over my career only to find that junior candidates did better on the same questions.

In the end, I'm not sure what it means when someone tells me they're a "Senior Software Engineer." I certainly have some ideas about what it should mean, but often they aren't carried out in real life.

How do others feel about the senior title? Do you think it is useful and in what way? What do you think it should mean? Do you think our overall industry will ever align on what it means to be a "senior" software engineer?

Discussion

pic
Editor guide
Collapse
sam_ferree profile image
Sam Ferree

Do you think our overall industry will ever align on what it means to be a "senior" software engineer?

No, but I don't think it needs to. As long as what it means is consistent within the company.

Collapse
tomowens profile image
Thomas J Owens

In larger companies, titles are somewhat important. Even in smaller companies, being able to denote someone with a great deal of experience in the product, the domain, or one or more of the core technologies from someone who is new to the product, the domain, or the core technologies is important. But it really only has meaning within a particular organization based on how they define their roles and titles. How many levels you need depends on your organization - I worked in an organization with 5 or 6 titles and another organization had 2 with 3 "grades" in each one.

Whatever titles your organization has, it should be consistent. There should be bars and expectations of someone with a given title. Make it meaningful to your organization.

I don't think that the software industry as a whole will align on much. There's too much variation in companies, in terms of size, organizational structure, processes and methods, and so on.

Collapse
ben profile image
Ben Halpern

Do you think our overall industry will ever align on what it means to be a "senior" software engineer?

I think people have a brilliant capacity to contort the meanings of words to fit their needs. That's why we need to constantly rename things and "regroup" in a way. Titles seem weird to me, but also people sometimes struggle not having a title, depending on their world view.

My big point is: I'm not sure.

Collapse
mortoray profile image
Collapse
nbageek profile image
Patrick Minton

This is Ye Olde “we don’t need titles, it’s influence that matters” debate. And it is usually true within one company, but the truth is that titles absolutely matter on resumes, so imho companies shouldn’t be jerks about doling them out (nor should they hand them out at random).

It’s useful for companies to define what they expect from the “Senior” role, and then give employees paths towards that promotion.

Collapse
hdennen profile image
Harry Dennen

"It’s useful for companies to define what they expect from the “Senior” role, and then give employees paths towards that promotion."

This.

Managing and aligning expectations is the one of the most important aspects of any working relationship in an organization. And if you've got a lot of people in an organization you absolutely need a shorthand for finding a reliable contributor to handle a responsibility.

Collapse
niorad profile image
Antonio Radovcic

I think it's ok "for internal use". Senior means, this person knows how to communicate and navigate in the corporate culture of their employer, and can teach others the same.

You know, like a monkey butler.

Simpsons

Collapse
bacchu profile image
Triv Prasad

It usually denotes that the person has been a software engineer more than 3-4 years and is not fresh out of school. 'Senior' software engineers are expected to be more independent and be mentors to the folks with 0-2 years experience. Other than that, it's mostly hazy on what it means. But as someone else said here, it should be consistent within the organization

Collapse
subbramanil profile image
Subbu Lakshmanan

Something I read about months ago, and I keep referring back is this blog. On Being a Senior Engineer.

P.S: Bit long, but absolutely worth it.

Collapse
mortoray profile image
edA‑qa mort‑ora‑y

No.

--
Edaqa Mortoray
Advanced Incredibly Esteemed Renowned Master of Code to the Final Rank Programmer

Collapse
dariusx profile image
Darius

If a software team includes people with very little job experience, there's a need to mentor them that goes beyond code-review. The mentor can point them to things that Google won't -- because they may not know what to look for. A mentor may also help provide perspectives that only come from experience.

That type of role is "senior", title or not.

Aside: Good mentors will also learn from those they mentor.

Collapse
bn_geek profile image
Mohcin Bounouara

Great point, Scott.. I always have this similar point, the senior in any team work is who can give the ideas that improve the work and win time ^