I'm a programmer who graduated 4 years ago and have worked at one company, spending 2 years as a Junior Developer and was then promoted to a normal level Developer.

I've been offered a Junior Developer position at a small local software house, with higher salary than I'm getting now. It also looks like a more interesting role.

What are the pros and cons to taking such a position? Am I likely to face questions later on my career about stepping backwards?

  • Have you asked them to just give you the title of "Developer"? Titles, in this industry, aren't worth anything. I know of at least one company that calls every single one of their developers "VP of Development".
    – NotMe
    Apr 14, 2016 at 22:18

5 Answers 5


You may face questions, but you have a perfectly valid response "The job title was lesser, but the pay was higher."

That pretty much trumps any other considerations. Job titles are company specific rather than a correct indication of your job. Interviewers are aware of this.

  • 2
    Completely agree... job titles alone are meaningless and change from company to company. What matters is what you are working on and how you are compensated.
    – user48276
    Apr 12, 2016 at 12:35
  • 1
    If you work for a bank in certain countries you automatically get a 'vice' in your title. It's the most useless thing i have ever seen.
    – Nelson
    Apr 13, 2016 at 15:31
  • 1
    24 (at the time) year-old Assistant Vice President checking in. Apr 13, 2016 at 20:32
  • I worked at a company that only had senior engineers, (no engineers, no juniors) about 10 of us, from the guys who did servers and domains, WANs and anything else. To the chap who's role was to keep our workshop clean and help carry stuff. Two of us were highly qualified, 5 had basic entry level certification, and 3 had no certification at all. But we all had the same job title.
    – Kilisi
    Apr 13, 2016 at 20:39

Is the pay commensurate as what you are now, plus some? If you are truly an able and capable programmer, and have interpersonal skills as well, you'll not be a "junior developer" for long. Since you will have taken the position in good faith, even if you do get treated as a (much more) senior person, it will be unlikely you'll get a raise as soon you might end up desiring.

By saying treated as here, I mean you'll probably be given projects and responsibilities than a more genuine junior person would be given. You need to consider for yourself, if you will be getting an attitude because you're not being paid commensurate to all of those responsibilities. If you, right now, consider the pay raise as worth more than a junior, but at least fair to a mid-level, then when you end up being treated as one, you'll already be fairly compensated.

Another thing is, if you take the position as a junior developer to a more senior one, it will be expected for you to not come in displaying a desire (hidden or not) to 'take over' ... even if you feel you could "do the job better" than the current guy, it's not what you will have been hired to do, so don't. At least until you have been in the position long enough to prove your own abilities and aptitude.

As an anecdote, in my current organization, we had a web development team lead leave for another position. We hired a new senior developer/team lead. A couple years later the old lead wanted to come back and we needed his skills (they were already a known quantity as it were.) He was re-hired with the express acknowledgement that he would not be the lead. Things didn't work out so well.

I know this isn't what you are planning, but plans don't last past implementation very well. People refer to positions as junior, mid-level and senior, even I do, but in real life, things are never so cut and dried. Your skills and experience add up over time to being a quality and quantity. If your S&E are beyond junior, than that is what you are. Getting hired as a "junior" person, when you are really a senior person in experience and skills rarely turns out well, unless there is a well thought out basis for your under-positioning.


The only title that anyone cares about for programmers is "Senior." You are either senior level, or not. Different degrees of "junior" titles don't matter, and they won't even register for most people. No one will know if you moved up or down, and no one will care.

You should take the job if it is a better job with better opportunities. Don't take or turn down a job based on the title.


Critically, you are under no obligation to list your official title on your CV.

For example, if you are working as a developer, there may be no moment when you are officially promoted to "Senior Developer", even if you are fulfilling that role. This is even more true for the progression from Junior to normal Developer. And even in companies with an official process, because of the slowness of that process, you're often "doing the job" long before you "have the role". (Honestly, this is the most common reason for people to move on, because it massively shortcuts the promotion/pay raise process)

Also, you can tailor your CV to represent your job role, not your official title. For example, did you take the lead on maintaining the shared testing database for a project? Fine, you are now "Database Manager for Project Toucan". Were you an active voice throughout a project? "Primary Developer on Project Toucan" (note that "primary developer" is perfect, because sounds very like an important job title, but is actually an unrecognised job role). Did you take responsibility for the design of a particular feature? "Design Lead of the Weird Widget, a critical feature of Project Toucan".

The only issue would be if you said something that, if they question, you would struggle to defend your word choice. But firstly, what you have written should always be true, even if it's not official. And secondly, they will never question this stuff, unless your interview skills are so bad that it raises questions about how anyone in their right mind could have let you be the primary developer (in which case get better at interviews).

It may come up when it comes to them getting your job references, but by that point you will have been through the entire interview process (realistically, you shouldn't even have given them your current job contacts reference till this point), and they have effectively already decided to accept you. At the very least, they are likely to call and ask why your references don't agree with your CV, and at that point you can explain; and at that point they are looking for excuses to hire you, not to move on to the next candidate, which is where they were at at the start of the process.


To address the question, take the new job if it pays better and looks more interesting.

What I'd like to point out here is that salary isn't the only thing that can be negotiated. You can tell the potential new employer that you have been promoted from "Junior Developer" to "Developer" by your current employer and that you believe your experience deserves that title. If they disagree, make them explain what it takes in time and work to acquire the new title. After starting the job, you know what you need to do to move up.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .