Wednesday, March 14, 2007

What is a "Senior Developer"

I had a chance to hear that term quite a lot recently, but the meaning is not always the same.

For me, a senior developer is someone who has more responsibility compared to other developers he is working with (usually because he is the type of person who wants more responsibility and has the ability to handle it).

As it turns out, for employers it has a completely different meaning:

  1. In large organizations (such as banks) there are two types of developers: "regular" developers, allowed only to code, and senior developers, doing also designs. Working on design as a part of the job definition may look trivial to someone who never worked in such a company, but it's not the case in those organizations.
  2. Employers looking for someone experienced and wanting to avoid interviewing people with a chance of failing a "FizzBuzz" test. In contrast with my view of the term, the entire development team in such company may be composed of "senior developers".

If you take the second definition, I think that after you have been a developer for a while (let's say 5 years), every position you filled and every position you are looking for can be said to be "senior", depriving the term of all meaning.

What does "Senior Developer" mean to you?


Anonymous said...

To me, a senior developer is a developer that works on a team (obviously) and is A.) better than the others and B.) takes his or her responsibilities as such seriously enough to deserve more benefits. There may be more than one if the team is large. By better, I should hope that no definition is needed...but, to start with: The better developer gets more done in less time without having to sacrifice quality, has enough experience that s/he doesn't need to look up every little bit of syntax, actually understands the platform they are working with and how to best leverage what it has to offer, and simply knows more "stuff" than the others. The senior needs to be willing to teach the intermediate and junior-level programmers, make architectural decisions and also attend more meetings. More OT. Oh, and the other developers always know who it is. Even if they don't say so.

Adi said...

I was referring to an official job title, especially when a company is hiring.
It seems to me the developer you are discussing is considered senior by being a part of the team for a while - so it's not the same thing, isn't it?

Anonymous said...

To me, a person that has been writting code for computers since 1978, a senior developer is a meaningless term, purely used to make some employees feel more important than others. "Senior" should mean that this person is in charge or manages others, but quite often, said person is not really in charge of anything and is just a member of a team who has been around for quite some time, but has not actually progressed up the management ladder in real terms. In my opinion, in this case "Senior" is actually implying the developer is not really that good, at least not good enough for promotion.

I_And_I said...

Senior Developer for me is a Profficient Professional who has more than 6 years of experience in a certain platform, and plus he is a leader Developer