I’m against the title “junior developer.” It bothers me on a few levels, and while this is mostly a rant and not as productive as it could be, a conversation on Twitter makes me think it’s still worth writing out.
Strongly disliking that we describe engineers with 2 years coding + (a theoretical physics degree | 10 years as an artist) as "junior"— Yehuda Katz 🥨 (@wycats) December 7, 2015
When there exists any situation that I take issue with, a generally good question to ask is “Cui bono?” or “Who benefits?” I can see the downsides of the junior developer title fairly clearly:
- It implies that the developer is not “productive”
- It implies a lot of work to “manage” the developer
- It implies general n00b-ness
Who DOES benefit? Why use “junior” in your titles?
- Companies to pay people less
- Companies to recruit from people looking for entry into the industry (that’s good, actually)
- To create a hierarchy and make some people feel better
That sounds mostly shitty to me (except for the honest recruiting bit), and seems like it’s a large fabrication companies tell themselves.
Dig this: I’ve never been a junior developer.
At a point, I started calling myself a developer, and you know, people started seeing me as one. Even more so, I started seeing myself as one.
When you call yourself junior, you might be discounting your own experience. Think about giving yourself some more credit.
Do titles matter?
Titles are nonsense, but they’re nonsense that impact how you’re percieved by others.
In the discussion on Twitter (click through the quote to read the thread), some of the counterpoint was “But how do I know what experience they have!?”
Ask them. That’s how you know.
“Junior,” “Senior” and “Staff” are very different beasts depending on the company, so in general, I’d say it’s better to go with the best (highest) you can swing for. Ex. I would not call myself “Senior” on my materials, because that means a very specific thing at the company I work at, but I have called myself “Software Engineer” when my paperwork title was “Web Developer” in the past.
But what do you call a person who’s new to development?
“Developer” works just fine.
Here’s the thing: if someone does a job, then the title for that job is the job. This is not complicated.
Someone who does the job of a developer gets the developer title. That’s the deal. And when you call them something else, especially if that something else mostly serves to either a) make other people feel better (booooo) or b) make the person with the title feel worse and give them an artificial hoop to overcome (BOOOOOO), then I think the title is bullshit.
But what if they’re really new, like totally new?
This is what gets me the most – you know what that’s called? An entry-level position. But I don’t (and don’t want to) see “Entry Level Designer” as a job title. Nope nope nope.
A POSITION is entry-level, TITLES are generally not.
And to boot, most junior developer positions aren’t entry-level. When people hire junior developers, they want them to know how to write code well already.
That’s not an entry-level position. That’s you using “junior” to apply some weird artificial filter to your candidate pool and pay them less, despite the fact that, you know, they’re developers.
JUNIOR DEVELOPER WANTED:— I Am Devloper (@iamdevloper) April 15, 2015
Must have all the experience of a senior developer, but be content with the salary of a junior.
But I like the junior! It gives me a way to identify with other new-er people!
Hey, awesome. That’s cool. This is a bit more about people who want to call other people junior. How you identify yourself is your business, but if you’re putting it on a resume … I suggest you drop “junior” 🙂