One of the first questions I ask when attending an interview is why are you hiring a senior PHP programmer? It is a question born out of cynicism. If everything is going well in your organization why change things by hiring someone? But also the question is 'Why do you need someone with lots of experience'. They are going to be more expensive so why are you spending the money?
In Joel Spolsky's book on hiring programmers, he states :-
The great software developers, indeed, the best in every field, are quite simply never on the market.
Sitting on the other side of the fence, I believe that the opposite is also true. The great software jobs are quite simply never on the market. There are many reasons to hire a senior programmer. Let us have a realistic look at them from the point of view of the jobseeker.
The business is growing and we have more paid projects then the current staff can handle.
- This is the most common answer, and sometimes it's not rubbish. It's one of the better answers but the problem for the jobseeker is there is no real way to disprove it. Also you have to ask why do you need more than a mid-level or even low level programmer.
Our senior programmer quit, and we are filling in his position
- Why did he quit? Is he moving cities to look after his sick aunt? Or did he just quit because he didn't like the job? It is once again hard for the jobseeker to verify this. Even if they gave you permission to speak to the ex-employee, would you believe it if he told you it was the greatest job on earth? Perhaps asking how long his tenure was may offer an insight.
We only hire experienced people
- If everyone is senior who makes decisions? Who does the boring crap? (Seriously there are often a lot of repetitive tasks that are perfect for a junior to cut his teeth on, and would drive a senior person insane with boredom). Who am I going to mentor?
Our platform is a complete mess and we need senior people to decipher it
- While this is a cynical view I believe that there are quite a few positions where a senior position is required because of this very reason. It will not be stated explicitly or even understood by the people hiring, and can be a real surprise for employees walking in to a new position. Trying to tell if this is the case before hand is tricky. The sad thing is that this type of challenge could be attractive to a senior person. Give a technical person the opportunity to make something better and they (should) grab it with both hands.
What are the other reasons to hire a senior programmer? Get it off your chest and leave a comment!