Job titles across companies are definitely nonsense but I suspect this has always been the case with all titles, since forever. For example, a senior at one company might be mid-level at another. I've had conversations with a friend who'd interviewed someone who was CTO at a company but never touched a budget, something that a mid-level manager would be expected to do at their own company!
That's definitely not true. Consider the US Navy rank of commander (O-5 / CDR).
On the one hand, this could be someone who is an unrestricted line officer and a qualified surface warfare officer. This is someone who could be the commanding officer of a destroyer.
On the other hand, this could be a dentist with 20 years of experience but no significant leadership responsibilities.
The quote I've heard in the context of the UK's Royal Navy is that the same rank can be commanding officer of a ship at sea or someone who makes tea for an admiral at Northwood.
One of the most important roles of job titles, which people who haven't been involved in salary decisions may not fully understand, relates to how companies compare salaries.
There are reports that a company can buy which provide detailed analysis of how other companies in their industry (and geographical area) are paying their staff.
A big part of the process of deciding how much of a raise someone should get then comes down to that data: how does their current salary compare to the median pay for similar levels at other nearby companies?
Obviously the actual titles used within companies vary a lot, but the report gathering companies attempt to normalize those.
Even without these cross-company reports, the title you have within a company has a very strong influence on how salary is calculated in that it allows your salary to be compared with your peers within your own company.
I'm feeling it pretty hard right now. I've been looking around for a new job these last few weeks and I'm having a hard time conveying that while being an intermediate "Site Reliability Engineer" and knowing how to do all the SRE things, the way I see and live my job, and the way I want to take it is very different from simply setting up and managing modern infrastructure while begging devs to ship prod-ready features. I've tried, as an experiment, writing a CV being more about the things I've done from a human/organizational/conceptual standpoint than about tech keywords, but I'm coming to the hard realization that I'm not stuffing "Kubernetes", "Terraform", "Grafana" in there I'll go straight to the bin.
Agreed BUT… they are still useful for talking about roles, responsibilities, and the kind of staff you need for a team.
You just can’t trust that somebody who was Staff Engineer at Yoyodyne has the skills you’d expect from a staff engineer. Sometimes because of title inflation, but also for other reasons—some people really do weasel and connive their way into promotions. We had an L6 (here, the level of a staff engineer) who was an absolute menace, and was great at telling lies to management. Every company has people like that, so you always have to vet new hires.
IMO, the author should question their strong desire to juxtapose themselves with more junior developers rather being rankled by their different take on the same subjective labeling system on a self-marketing platform.
I am in this industry in Eastern Europe for almost 20 years now, and my LinkedIn title is "experienced computer programmer". I think it most accurately describes what I'm good at - building and fixing stuff. I've built pieces of software that run unattended for years. I've fixed race conditions in other people's code. This captures the part of my skillset that is transferable to other companies.
Calling everyone involved in software an "engineer" seems to be a very FAANG-y thing that has trickled to "lesser" companies.
I've been in this industry for a very long time. When I started, I called myself a "programmer". But then it became fashionable for everyone to all themselves "engineers", so I did the same. It's only a difference in marketing, but marketing can make a big difference.
These days, I just call myself a "developer". I think it's nicely neutral and gets me out of those awful "what is an engineer, anyway?" discussions.
Programmers have been called engineers since at least the late 90s, when FAANG was just AA.
I mean I've called myself a programmer since forever ago. I'm not comfortable with the term "engineer". I concede that it helps business types take me and what I do more seriously. "Programmer" connotes somebody who mindlessly translates human-language requirements into code, even though there's nothing mindless about that process. So I quietly accept the title of engineer when a company bestows it upon me. But I'm a programmer at heart. When I hear "engineer" I think of my father, who could design and build actual engines. Or maybe a civil engineer? I dunno.
"Software engineering" was a term coined by, I believe, NASA engineer and Apollo software lead, Margaret Hamilton. When she used the term, it was more in the sense of like, chemical engineering. A chemist experiments with, and attempts to synthesize, new chemicals to determine their properties. A chemical engineer is concerned with scale; they solve for how to produce chemicals at industrial scales. The chemist's technique may produce small amounts of a chemical for experimentation; the chemical engineer needs to design a way to produce the chemical by the kilolitre.
So originally, software engineering concerned itself with how to develop software at industrial scales with reliable, repeatable results. Of course much of it is nonsense because the purpose of programming is to develop something new. There's a lot of overlap between software engineering as a discipline and what we today call "methodology". But methodology is, largely, a cargo cult! Today, to be a software engineer is to be a cog in a system that follows some "best practice" (meaning you won't be fired for adopting it) process.
Which is better? To be a writer (like Hemingway or Dostoyevsky)? Or to be a "literature engineer" (say, one of the faceless ghostwriters who churn out Sweet Valley books under Francine Pascal's byline)?
Early in my career I had the pleasure of working for a bank.
There is a saying about banks "More VP's than coffee pots" and it's true. Stay at a bank long enough and they will slap the VP title on you.
My lack of "respect" for any ones title that didn't start with a C started there.
There are key people, the gate keepers, the knowledge havers in ever org. Those who know where the closet is with the skeletons (or in some cases grave yards)... These are the real Senior's in their respective roles. Be it engineering, CS, accounting... the old hands who in a pinch can do any job who understand their work, how it fits in with the business and can do all the jobs their role touches.
What this article is about: Its titles that come out of HR, pay grade, and role definition. Those folks (and more so at larger companies) take those things seriously. Startups throw titles out to either make people feel special or to make things seem more equal when they aren't... It keeps them engaged in what amounts to a shitty situation! Title bumps and free snacks for all is the startup way.
I see the impact of this with devs on my teams. They come to me saying that company XYZ down the road are paying their senior developers 50% more than the company I work for, but if you dig into the role profile a bit it's clear that a senior at XYZ is the equivalent of a principal at my company. People see the title and make assumptions that the roles are the same. It'd be helpful if we had normalized titles across the industry.
Written role profiles for the company are likely grossly exaggerated.
For example at my last company we had 9 principal engineers, but the responsibility matrix for described maybe a half dozen people in the entire language ecosystem.
My guess is that if you regularly have seniors telling you other comparable companies are paying 50% more for the same job, they probably actually are.
My guess is that if you regularly have seniors telling you other comparable companies are paying 50% more for the same job, they probably actually are.
I've checked. Our expectations of a senior are a lot lower than the other company. Plus, if it was true, then I'd expect all my seniors to be leaving. The fact they're not indicates that our salaries aren't that bad.
It's already an HR nightmare to have levels standardized across the same company, I don't know if this would be humanly possible across the industry. It would probably be a point-based system heavily relying on certifications, degrees, titles, tenure in a position in a company etc.
Hell on Earth, basically, in my opinion.
I've never held a real dev job and too dumb for leetcode, and I call myself a "product designer" and still, I sometimes find myself helping senior engineering friends fix their React or CSS
They are not bullshit. They are created by companies to suppress compensation. For example we have "staff engineer" which is supposedly doing a lot of high level stuff across the whole organization, but org provides very few such opportunities. So everyone is stuck with "senior engineer" pay grade and the employer gaslights you into "oh you only deserve senior pay because you are not good enough for next pay grade"
That's a bit of a strange take on it from my point of view; most companies do have a role pyramid where they need relatively fewer people exercising certain responsibilities as you go up.
Companies are not going to pay people for just meeting the bar, but actually for doing the higher-level work, right?
If you're ready for the next level but can't find an opportunity inside your current firm (for whatever reason) then that can be a signal that you should be looking for another opportunity if you care about fulfilling that ambition.
> I've worked with engineers who've been hired at a higher level than I believe they are due to negotiating their compensating package higher,
This is the only thing that matters. Skillsets and expectations differ from company to company. Who cares what they call you? What matters, to me, is how much you can extract. If you can't contribute, let another engineer (or group of engineers) make an argument for why you should be demoted or fired. They will have to contend with whoever hired you, which will include a manager and their record of hiring and other factors. It's not really worth it.
I was pretty fearless and was successful in getting people let go, a lot, when I was under 30. It helped that the biggest factor is politics and/or market conditions. I have also been let go because of similar reasons...eg I wrote a bad review of a manager and I didn't follow esoteric standards I didn't know about. Eventually, by the time I was 40, I had a good sense of how people could grow. Now I categorize people as useful to me or not, when I'm leading a team.
Either way, titles are bullshit. You will still be judged by them, within the context of your current employer.
Companies can reward employees one of three ways (1) Compensation (2) Fulfilling and self actualizing projects (3) Vanity Titles. Guess which one costs $0 and minimal effort? :-)
(3) is tell me you've never worked in HR without telling me you've never worked in HR. I've been involved in projects to change titles for engineering in a large org and just getting started involves millions in consulting money.
There are some other titles that generally aren't BS: Lead, Architect, and Manager. They all convey generally accepted roles, and if your work doesn't align with your title, there's a problem.
Titles also matter when working in distributed teams, where a lot of the subtle signaling that happens in face-to-face situations is muted. I once pushed for a title change when I was going to lead people overseas, because it was very important that, if my team looked me up in the company directory, "on paper" I outranked them.
> I've worked with engineers who've been hired at a higher level than I believe they are due to negotiating their compensating package higher, which is frustrating too, as you can then expect more of them, when they don't necessarily have all the skills.
That's a real important factor, especially when playing "large company politics." In some cases, hiring quotas need to be met, and market conditions need to be met too.
But, when it comes to experienced employees who a company wants to hold on to, meeting their salary expectations needs to come in line with the title.
This is also the difference between functional title and corporate title that you'll find at larger companies.
Your corporate title is your level on HR's ladder, and it'll be based on whatever HR comes up with - senior, VP, director, etc.
Then more often functional titles are determined by individual departments or groups, and reflect what someone is actually doing. This is architect, PM, lead, manager, whatever. Sometimes these could conflict with corp titles, but often end up being role specific.
It's all dependent on how companies set things up.
Outside of broad levels like junior, senior and staff (which are only a little bit useful in cross-company comparisons) job titles are a tool of HR and mostly useless.
I mean, places like Microsoft have 10 or 12 levels; how can you actually distinguish engineers at that granularity? I've worked on teams where everyone is a staff engineer.
Yeah, quite so, but that is probably not a rational state of mind to keep up for the long term. OP sounds like they are caught in such a contradictory viewpoint: they hate that everyone cares about job titles, yet they themselves care strongly about job titles
For e.g. “I quite like knowing where folks sit on the org chart compared to me”, & puzzling over the ‘meaning’ of “senior” in a job title!
Job titles are bullshit unless you are someone who needs a job title to be taken seriously. Like a woman, immigrant, or anyone else who hasn’t learned that upper middle class way of speaking and writing.
They are especially useful when talking to external people. An email from “Joe Shmoe, engineer” lands very differently than an email from “Joe Shmoe, head of engineering”
I also think this feels like pandering to prejudice and might even make things worse by encouraging people not to take those people seriously unless they have the right title.
You also still do not need huge numbers of job titles to try and indicate an exact level, nor title inflation.
I am quite surprised that title inflation has not caused more problems than it has. Its been awhile but IIRC UK law (and other common law countries I would guess) will hold a company to a contract if the employee was made to look like they had the right to agree to it - and calling someone "director" might well do that.
Job titles across companies are definitely nonsense but I suspect this has always been the case with all titles, since forever. For example, a senior at one company might be mid-level at another. I've had conversations with a friend who'd interviewed someone who was CTO at a company but never touched a budget, something that a mid-level manager would be expected to do at their own company!
Even differences from department to department in the same company can be huge.
Ack! What is the path forward then? Finding out as many details about each position as you can before you apply?
2 replies →
I guess the only real titles are probably the ones in the military
That's definitely not true. Consider the US Navy rank of commander (O-5 / CDR).
On the one hand, this could be someone who is an unrestricted line officer and a qualified surface warfare officer. This is someone who could be the commanding officer of a destroyer.
On the other hand, this could be a dentist with 20 years of experience but no significant leadership responsibilities.
The quote I've heard in the context of the UK's Royal Navy is that the same rank can be commanding officer of a ship at sea or someone who makes tea for an admiral at Northwood.
And even they're not equivalent across countries ;-)
One of the most important roles of job titles, which people who haven't been involved in salary decisions may not fully understand, relates to how companies compare salaries.
There are reports that a company can buy which provide detailed analysis of how other companies in their industry (and geographical area) are paying their staff.
A big part of the process of deciding how much of a raise someone should get then comes down to that data: how does their current salary compare to the median pay for similar levels at other nearby companies?
Obviously the actual titles used within companies vary a lot, but the report gathering companies attempt to normalize those.
Even without these cross-company reports, the title you have within a company has a very strong influence on how salary is calculated in that it allows your salary to be compared with your peers within your own company.
I'm feeling it pretty hard right now. I've been looking around for a new job these last few weeks and I'm having a hard time conveying that while being an intermediate "Site Reliability Engineer" and knowing how to do all the SRE things, the way I see and live my job, and the way I want to take it is very different from simply setting up and managing modern infrastructure while begging devs to ship prod-ready features. I've tried, as an experiment, writing a CV being more about the things I've done from a human/organizational/conceptual standpoint than about tech keywords, but I'm coming to the hard realization that I'm not stuffing "Kubernetes", "Terraform", "Grafana" in there I'll go straight to the bin.
Titles mean nothing. Scope and pay are what matters.
Work backwards from that and call yourself whatever you want :)
Agreed BUT… they are still useful for talking about roles, responsibilities, and the kind of staff you need for a team.
You just can’t trust that somebody who was Staff Engineer at Yoyodyne has the skills you’d expect from a staff engineer. Sometimes because of title inflation, but also for other reasons—some people really do weasel and connive their way into promotions. We had an L6 (here, the level of a staff engineer) who was an absolute menace, and was great at telling lies to management. Every company has people like that, so you always have to vet new hires.
IMO, the author should question their strong desire to juxtapose themselves with more junior developers rather being rankled by their different take on the same subjective labeling system on a self-marketing platform.
Signed, CTO of this HN comment
I am in this industry in Eastern Europe for almost 20 years now, and my LinkedIn title is "experienced computer programmer". I think it most accurately describes what I'm good at - building and fixing stuff. I've built pieces of software that run unattended for years. I've fixed race conditions in other people's code. This captures the part of my skillset that is transferable to other companies.
Calling everyone involved in software an "engineer" seems to be a very FAANG-y thing that has trickled to "lesser" companies.
I've been in this industry for a very long time. When I started, I called myself a "programmer". But then it became fashionable for everyone to all themselves "engineers", so I did the same. It's only a difference in marketing, but marketing can make a big difference.
These days, I just call myself a "developer". I think it's nicely neutral and gets me out of those awful "what is an engineer, anyway?" discussions.
Programmers have been called engineers since at least the late 90s, when FAANG was just AA.
I mean I've called myself a programmer since forever ago. I'm not comfortable with the term "engineer". I concede that it helps business types take me and what I do more seriously. "Programmer" connotes somebody who mindlessly translates human-language requirements into code, even though there's nothing mindless about that process. So I quietly accept the title of engineer when a company bestows it upon me. But I'm a programmer at heart. When I hear "engineer" I think of my father, who could design and build actual engines. Or maybe a civil engineer? I dunno.
"Software engineering" was a term coined by, I believe, NASA engineer and Apollo software lead, Margaret Hamilton. When she used the term, it was more in the sense of like, chemical engineering. A chemist experiments with, and attempts to synthesize, new chemicals to determine their properties. A chemical engineer is concerned with scale; they solve for how to produce chemicals at industrial scales. The chemist's technique may produce small amounts of a chemical for experimentation; the chemical engineer needs to design a way to produce the chemical by the kilolitre.
So originally, software engineering concerned itself with how to develop software at industrial scales with reliable, repeatable results. Of course much of it is nonsense because the purpose of programming is to develop something new. There's a lot of overlap between software engineering as a discipline and what we today call "methodology". But methodology is, largely, a cargo cult! Today, to be a software engineer is to be a cog in a system that follows some "best practice" (meaning you won't be fired for adopting it) process.
Which is better? To be a writer (like Hemingway or Dostoyevsky)? Or to be a "literature engineer" (say, one of the faceless ghostwriters who churn out Sweet Valley books under Francine Pascal's byline)?
Early in my career I had the pleasure of working for a bank.
There is a saying about banks "More VP's than coffee pots" and it's true. Stay at a bank long enough and they will slap the VP title on you.
My lack of "respect" for any ones title that didn't start with a C started there.
There are key people, the gate keepers, the knowledge havers in ever org. Those who know where the closet is with the skeletons (or in some cases grave yards)... These are the real Senior's in their respective roles. Be it engineering, CS, accounting... the old hands who in a pinch can do any job who understand their work, how it fits in with the business and can do all the jobs their role touches.
What this article is about: Its titles that come out of HR, pay grade, and role definition. Those folks (and more so at larger companies) take those things seriously. Startups throw titles out to either make people feel special or to make things seem more equal when they aren't... It keeps them engaged in what amounts to a shitty situation! Title bumps and free snacks for all is the startup way.
Doesn't facebook famously have single title of "software engineer". Curious to hear how that works in practice.
My solution would be to delete LinkedIn. But then again, I'm so bad at self promotion that it makes no difference anyway.
Title inflation is real, and can be a way for companies to effectively offer more future compensation.
I see the impact of this with devs on my teams. They come to me saying that company XYZ down the road are paying their senior developers 50% more than the company I work for, but if you dig into the role profile a bit it's clear that a senior at XYZ is the equivalent of a principal at my company. People see the title and make assumptions that the roles are the same. It'd be helpful if we had normalized titles across the industry.
Written role profiles for the company are likely grossly exaggerated.
For example at my last company we had 9 principal engineers, but the responsibility matrix for described maybe a half dozen people in the entire language ecosystem.
My guess is that if you regularly have seniors telling you other comparable companies are paying 50% more for the same job, they probably actually are.
My guess is that if you regularly have seniors telling you other comparable companies are paying 50% more for the same job, they probably actually are.
I've checked. Our expectations of a senior are a lot lower than the other company. Plus, if it was true, then I'd expect all my seniors to be leaving. The fact they're not indicates that our salaries aren't that bad.
3 replies →
It's already an HR nightmare to have levels standardized across the same company, I don't know if this would be humanly possible across the industry. It would probably be a point-based system heavily relying on certifications, degrees, titles, tenure in a position in a company etc. Hell on Earth, basically, in my opinion.
I've never held a real dev job and too dumb for leetcode, and I call myself a "product designer" and still, I sometimes find myself helping senior engineering friends fix their React or CSS
They are not bullshit. They are created by companies to suppress compensation. For example we have "staff engineer" which is supposedly doing a lot of high level stuff across the whole organization, but org provides very few such opportunities. So everyone is stuck with "senior engineer" pay grade and the employer gaslights you into "oh you only deserve senior pay because you are not good enough for next pay grade"
That's a bit of a strange take on it from my point of view; most companies do have a role pyramid where they need relatively fewer people exercising certain responsibilities as you go up.
Companies are not going to pay people for just meeting the bar, but actually for doing the higher-level work, right?
If you're ready for the next level but can't find an opportunity inside your current firm (for whatever reason) then that can be a signal that you should be looking for another opportunity if you care about fulfilling that ambition.
> If you're ready for the next level
how does one know this ?
2 replies →
> I've worked with engineers who've been hired at a higher level than I believe they are due to negotiating their compensating package higher,
This is the only thing that matters. Skillsets and expectations differ from company to company. Who cares what they call you? What matters, to me, is how much you can extract. If you can't contribute, let another engineer (or group of engineers) make an argument for why you should be demoted or fired. They will have to contend with whoever hired you, which will include a manager and their record of hiring and other factors. It's not really worth it.
I was pretty fearless and was successful in getting people let go, a lot, when I was under 30. It helped that the biggest factor is politics and/or market conditions. I have also been let go because of similar reasons...eg I wrote a bad review of a manager and I didn't follow esoteric standards I didn't know about. Eventually, by the time I was 40, I had a good sense of how people could grow. Now I categorize people as useful to me or not, when I'm leading a team.
Either way, titles are bullshit. You will still be judged by them, within the context of your current employer.
Companies can reward employees one of three ways (1) Compensation (2) Fulfilling and self actualizing projects (3) Vanity Titles. Guess which one costs $0 and minimal effort? :-)
(3) is tell me you've never worked in HR without telling me you've never worked in HR. I've been involved in projects to change titles for engineering in a large org and just getting started involves millions in consulting money.
There are some other titles that generally aren't BS: Lead, Architect, and Manager. They all convey generally accepted roles, and if your work doesn't align with your title, there's a problem.
Titles also matter when working in distributed teams, where a lot of the subtle signaling that happens in face-to-face situations is muted. I once pushed for a title change when I was going to lead people overseas, because it was very important that, if my team looked me up in the company directory, "on paper" I outranked them.
> I've worked with engineers who've been hired at a higher level than I believe they are due to negotiating their compensating package higher, which is frustrating too, as you can then expect more of them, when they don't necessarily have all the skills.
That's a real important factor, especially when playing "large company politics." In some cases, hiring quotas need to be met, and market conditions need to be met too.
But, when it comes to experienced employees who a company wants to hold on to, meeting their salary expectations needs to come in line with the title.
This is also the difference between functional title and corporate title that you'll find at larger companies.
Your corporate title is your level on HR's ladder, and it'll be based on whatever HR comes up with - senior, VP, director, etc.
Then more often functional titles are determined by individual departments or groups, and reflect what someone is actually doing. This is architect, PM, lead, manager, whatever. Sometimes these could conflict with corp titles, but often end up being role specific.
It's all dependent on how companies set things up.
Outside of broad levels like junior, senior and staff (which are only a little bit useful in cross-company comparisons) job titles are a tool of HR and mostly useless.
I mean, places like Microsoft have 10 or 12 levels; how can you actually distinguish engineers at that granularity? I've worked on teams where everyone is a staff engineer.
They are only bullshit because companies make them so. Well most companies. Some care and have decent ones.
But what you do is normalize them for LinkedIn. That's what I do.
This person says that job titles are bullshit (I agree, generally), but expressed many reasons why they care strongly about job titles
Isn’t this contradictory?
surprisingly common to find oneself caring strongly about bullshit
Yeah, quite so, but that is probably not a rational state of mind to keep up for the long term. OP sounds like they are caught in such a contradictory viewpoint: they hate that everyone cares about job titles, yet they themselves care strongly about job titles
For e.g. “I quite like knowing where folks sit on the org chart compared to me”, & puzzling over the ‘meaning’ of “senior” in a job title!
Job titles are bullshit unless you are someone who needs a job title to be taken seriously. Like a woman, immigrant, or anyone else who hasn’t learned that upper middle class way of speaking and writing.
They are especially useful when talking to external people. An email from “Joe Shmoe, engineer” lands very differently than an email from “Joe Shmoe, head of engineering”
Women and immigrants can be upper middle class.
I also think this feels like pandering to prejudice and might even make things worse by encouraging people not to take those people seriously unless they have the right title.
You also still do not need huge numbers of job titles to try and indicate an exact level, nor title inflation.
I am quite surprised that title inflation has not caused more problems than it has. Its been awhile but IIRC UK law (and other common law countries I would guess) will hold a company to a contract if the employee was made to look like they had the right to agree to it - and calling someone "director" might well do that.
which is why all sales people are Senior Account Partner for the Americas, Director, Et. al.
[flagged]