Skip to content

Please remove “junior” from your developer titles

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.

Cui bono?

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.

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” 🙂

10 Replies to “Please remove “junior” from your developer titles”

  1. I agree with this. I think the junior title is only useful when recruiting someone and you need to gauge experience. So that’s it junior is a experience gauge for internal use only.

  2. I’ve worked with plenty of “senior” developers who were clueless. That title should also go away except for job descriptions on recruiting sites. You can also be a senior developer who did backend work your entire career, why would you be Sr. at your new job building mobile apps?

    These terms are confusing since there’s no standard and so many fields developers can work in.

    When I do describe someone as a “junior” developer it’s usually based on the quality of their work and refers to their lack of experience. I’ve been trying to use other words that might be clearer instead (like new developer).

  3. I agree with your general premise, but I think there is one situation where ‘junior’ is appropriate. I was a paid intern for 3 years at a company, I really with the last year or so I had been a ‘junior developer’. I’ve noticed that I get basically no credit for that part of my career even though it was really formative, because everyone assumes intern means making coffee and filing papers (so to speak).

    To me, I think a ‘junior developer’ is a legit title for someone that is more than an intern passing through, but doesn’t yet have the degree finished. If we hire someone after their sophomore year as an intern, when they come back after their junior year I’d go with the junior title. Then when they graduate we offer a straight engineer title.

  4. Isn’t it mostly companies that give the title though? I’ve seen job ads specifically for junior developers. I don’t know. They likely test everyone skill anyway, so if you’re good enough to work as a developer professionally you’re probably not “junior”.
    Coding tests are popular during job screenings any can be administered remotely with online platforms like TestDome:

  5. Another major downside of assigning these “junior”, “senior”, “staff”, “architect” titles is promoting the notion that there is nothing for the

    “senior” to learn from the “junior”
    “architect” alone has the ability and final say to tell a good design from the bad

    If companies want greater collaboration and decisions made with sound reasoning – ditch these titles so that there is productive discussions that would create a chance for awareness/coaching for the less experienced while keep the avenue open for the experienced to learn fresh ideas and insights from the less experienced. Instead of stipulations handed out from seniors to juniors, discussions leads to choices.

    If companies want to reward experience, just have that done in the payroll system. Let all developers or software engineers have titles as “Developer” or “Software Engineer” regardless of their pay.

  6. Even though I agree with this the fact is a company might give different responsibilities to a specific title. A ‘junior’ will not be accountable for the same thing as a ‘senior’.
    I would argue that most company does not apply this logic and just give titles based on random attributes.
    But if responsibilities differ from one position to another, even though the job might be the same, the engineer would be more or less accountable for the work that has been done.
    Alternatively, lots of company dropped the “junior” title and use instead, a numerical level (I think Google start at Engineer II).

    I would agree, as the article points out, there is a difference between title in the company vs title you expose to others. An engineer is an engineer. junior, intermediate, or senior, still an engineer.

  7. I love this article. My title ‘junior’ decreasing my motivation against my work. I will call myself `Web Developer` from today.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.