Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Hey guys, is it just me or is the categorization of developer levels highly subjective? I get the feeling that every company tries to hire experienced developers as juniors because they don't know $technology.

For example my own career: I switched technologies a couple of times, while sticking to java as a programming language. For example I first worked for 3 years using JavaSE technologies, the next company I worked for hired me as junior because I didn't have JavaEE experience - while still selling me as professional level to customers (I work in consulting). The next company hired me again as junior because I didn't have SAP experience - they mostly work with SAP Java technologies which is definitely a niche. Still, they are selling all their technology consultants for exactly the same rate while paying them significantly different wages. Now when switching jobs again I feel like this whole thing is going to start all over again because I don't have Spring experience or Oracle knowledge.

tl;dr = is my observation totally off base that companies are just using these categorizations as means to keep down wages?

share|improve this question

closed as primarily opinion-based by MichaelT, GlenH7, gnat, Kilian Foth, MainMa Mar 17 at 21:38

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

Sounds to me like at this point you're pretty much a pro with Java. Don't settle for junior pay next time -- if the company won't acknowledge your skills, move on. –  Matthew Read Mar 3 '11 at 21:37

5 Answers 5

up vote 14 down vote accepted

Indeed it is highly subjective, there is no widely accepted convention over who is "senior". And many companies try to hire you for the cheapest possible rate, for sure. You need to practice selling yourself, however bad it may sound.

E.g. you may emphasize that being a developer experienced in several languages / platforms, you can easily pick up a new one, and may probably be better in it in the long run than a freshman from colleague, since you already have experience with common pitfalls and problems which can make almost any project go astray. To prove that, you may relate war stories from previous projects where you did just that.

Armed with that, you may also decide to look for companies which don't just look for the cheapest possible workforce, but for quality developers who can make a difference, and treat them as valuable assets, striving to ensure that they stay at the company for long. I know there aren't that many of these in certain countries/areas, but they do exist.

share|improve this answer
+1. Sell yourself is as important as being a good professional, specially on consulting markets. And as difficult as being a good professional. –  Machado Mar 3 '11 at 21:38

It is highly subjective and each company can have its own interpretation of the hierarchy. Some companies may think that to be a senior you have to have 10 years experience while others may believe it may take only a couple of years but that one would have to work really hard to develop the skills expected from senior developers,e.g. mentoring, technical leadership, etc

share|improve this answer

It's entirely subjective. Each company has its own hierarchy where different titles mean different things (many don't even use the junior / senior / associate / etc. terminology). It just depends on their own needs and how their employees fit those needs. Like you said, it depends on your experience too. If you have professional experience in one technology and switch jobs to somewhere where they don't use it, of course you won't be as experienced as their current developers. And they might try to get you for cheap if that is the case, regardless of your past experience (but not everyone does that). The best you can do is convince them that you can perform as well as their current top employees.

share|improve this answer

The example you gave shows your level is relative to the technology you're focusing on. This is points on stackoverflow do not carry over to superuser.

What it takes to be a senior level is subjective, but you can be certain it's higher than junior (I know, that's not much help.).

The company can charge for more for indicating a certain level, but they run the risk of losing a contract if the person is under qualified.

share|improve this answer

A software practitioner with three years of experience is still a junior person in this field. I have been a software practitioner for over thirty years.

share|improve this answer