This is admittedly a pretty short post asking a pretty big question. I'd be willing to provide some details if that would help to stimulate some discussion, but hopefully the following can at least get things started.

I am experiencing a "career midlife crisis" in the sense that I've been a software engineer for approximately 10 years, and I'm feeling that with my knowledge of programming, higher-level design issues and sense of perspective I should be able to transition to a senior position. At the same time, I've taken some cues from my current employer that for me to make that transition with them would be a fairly extensive undertaking, and I should not expect it in the near term. In a sense I feel they are under-rating my accomplishments thus far. I also think I look a lot younger than I am and this, too, colors their perspective.

So I've been thinking of presenting myself to the larger software market as a strong candidate for a senior-level position. Thus far, I have never held a job with the word "senior" in the title; I don't know how great an obstacle that would be. I don't think there is an expectation in the industry that one becomes a senior engineer by way of internal promotion only. In fact, I've had some interviews in the past where the interviewer would first establish the candidate's "level" and would then conduct the interview at the "level" appropriate for the candidate, as if to say, "Here we are face-to-face, now show me your level and we'll talk about the possibilities."

Am I being realistic?

Thanks to everyone for your advice.

  • This also depends on where you are. Most of the places I've worked at recently have like 8 Seniors, 2 Juniors and 1 plain old Software Engineer.
    – Telastyn
    Aug 22 '14 at 13:57
  • 9
    I would like to clarify something: do you want to just be called a "senior", do you want to be a "lead", do you want to have any direct reports (supervisor), and/or do you want decision-making authority or program management duties? Do you want a raise, more money, security? In the IT industry, "senior" is often just a word that itself doesn't guarantee any of these things other than the word.
    – BrianH
    Aug 22 '14 at 15:27
  • To reinforce the inconsistency everyone else has cited, go search for developer positions online and notice the huge experience difference between what different companies call "Senior". Further complicating this is what they'll actually hire as a "Senior" developer. I've had companies try to head-hunt me for a "Senior" position that required 8 years of experience, but they're willing to hire me for it despite being nowhere near that.
    – thanby
    Aug 22 '14 at 17:15
  • If you're among the most expereinced on the team isn't this the definition of "senior"?? Maybe your title doesn't include it but it doesn't mean youre not senior
    – Brandin
    Aug 23 '14 at 3:54

Promotion path

Advancing in the software industry is a pretty weird thing, and entirely inconsistent here are the common ways people get promoted to senior level these days.

  • Work for a company for X years as a software person (typically 5 or 7)
  • Demonstrate a level of expertise appropriate to being a senior level
  • Wait for the Senior person to quit
  • Become important to a company then demand the title

Why are these paths all over the place? Because the title senior is all over the place.

Senior is a bankrupt word

Generally speaking Senior used to mean you had the expected expertise one would achieve working that job for 7 - 10 years.

Of course some companies offer no challenge others offer tremendous challenges, so the number itself isn't as important.

These days senior can be:

  • Someone who has X years in the field
  • Someone who is really good at their trade
  • Whoever sucks the least out of my immediate staff
  • Someone who is a good negotiator
  • The boss's drinking buddy

The title typically meaningless

It doesn't necessarily reflect your skill level at all. Most companies will do something to assess your technical know how.

As someone who hires, when I look at a resume I see Junior Developer, Developer, and Senior Developer as the same title. The only time I take further merit between those is if I happen to know the previous company bases the title on technical expertise.

Even then, I still assess technical skill through various means. (I've seen some really lousy people come from decent companies. Some people are really good at "Fake it til you make it".)

This is a common problem

Look at the titles out there... Sanitation Engineer yep, this used to actually be a real thing regarding to waste management, now it also includes Janitors. Food services engineer yeah, this also used to be a real job, now it includes the guy working the deep frier.

So "Engineer" is a pretty worthless word as well now. Since titles are just all over the place, people hiring generally only care if it was related to your field. Otherwise the company is more important than the title.

  • 3
    "Whoever sucks the least out of my immediate staff" is unfortunately the sad majority of "senior" staff in most of the companies that I have worked with as a contractor.
    – user17163
    Aug 22 '14 at 16:16
  • @Thebluefish yeah that's typical of small companies where "senior" effectively means "team lead" Aug 22 '14 at 17:33

You are absolutely realistic.

Titles do not mean much and hiring managers should be able to evaluate you adequately regardless if your title includes the word "senior" or not.

I would focus on building a rock solid résumé that highlights your experience as a senior developer. Details in that résumé should describes the work usually done by a senior developer.

To assist you in crafting this résumé, you may want to research "senior developer" job descriptions.

If you are, by experience rather than by title, a "senior" developer, you will have no issue convincing your interviewer.

Per your question I don't think this is the case but if your current title contains the work "junior", such as "junior developer", I would simply state "developer" on the résumé.


taken cues from my current employer that for me to make that transition with them would be a fairly extensive undertaking, and I should not expect it in the near term

Of course they tell you this! You're doing a good job and they really don't want you to do the same job with a "Senior" title because they expect you'll demand a raise to reflect the new title. Plus, your market value may rise, which may make you more likely to leave.

Bottomline: It's understandable, though not fair, that your current employer does not want you to progress in your carreer. Try to negotiate harder to get what you deserve, or consider leaving.

  • 1
    Sadly, if this is the tactic your employer takes, the best route is to shop around. (Up to the person if you want to use an offer to negotiate, but simply put if your employer is taking advantage of you, then you shouldn't put up with it any longer than necessary) Aug 22 '14 at 14:17
  • Agreed. - However, to add to my post, "taking cues" does not sound like anything serious, so I wouldn't bet on those "cues" too much. If the company keeps that attitude during real, straight negotiations with you, only then you know for certain and can make your decisions; but maybe they give in after a round or two, acknowledging your value for them. Only one way to find out, I guess.
    – JimmyB
    Aug 22 '14 at 14:23

Different software companies have different overall levels of skill for their developer. A junior developer at an extremely elite tech house (Twitter, StackExchange) would probably be as skilled as a senior developer in a place that doesn't have as high a level of skill.

So if you would like the better title, simply go work for a worse company, and you will appear more senior simply by context.

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