You've got it exactly backwards: it's not intended to deter the unqualified, it's meant to attract the qualified.
And yes, high salaries do tend to attract good people. Maybe not exclusively, but it's an important factor. So, if the complaint is that "there are no good programmers" (and we assume that your screening process isn't totally arbitrary), there's a pretty good bet that you're not attracting good programmers from the places where they currently work. High salaries are a good way to do that.
...which is why you have a screening process.
When people are complaining that there are no good programmers (and this is a common complaint on HN; it's not just a straw man), there's at least one of two things going on:
1) Their screening process sucks.
2) They aren't attracting good programmers.
High salaries help with #2.
Also, if you have a stellar programmer in an interview, they tend to stick out more than their non stellar counterparts.
Edit: by 'we' I meant 'we as programmers'.
Of course it would be better to make them define a salary range, but until now I was never able to do this.
Once you reach senior level development in popular technologies, companies are often eager to come after you. (At least, that's what the recruiters and help want ads seem to indicate about senior level J2EE developers around the Philly area.)
Find someone who doesn't actually want the job, but who has the skills to help you narrow things down. Trim out the people who obviously aren't qualified (or who didn't even read the job application properly). Pay him by the hour (his normal IT wage, $75-150/hr, whatever he's worth) to sift through the resumes you've narrowed it down to. Have him pick out the most qualified or most interesting candidates with little annotations as to why yes or why no. Doesn't have to be complex - notes like 'Only Microsoft experience listed', or 'lots of experience with web app development' or 'he lasted four years at BlahTech; if he weren't awesome they'd have fired him after three months', or 'he wrote half the code on the database system you're using'.
It's something he could probably do in his spare time, lounging at home on the couch with a stack of PDFs. If he spends five hours at $100/hr over the course of a week, that's $500 that went towards not wasting your time in useless interviews, or less risk of hiring the wrong person and wasting far, far more. That could be a dozen first-round phone interviews you've skipped over by narrowing the candidates down. If each interview is an hour long, that's a day and a half of everyone's time saved.
It's pretty easy to find someone with technical skill if you do your research; the hard part is finding someone who's looking for a job, or at least the one you're offering specifically. A 'clueless' manager won't know what to look for in a candidate, but if they can narrow things down and then hire someone else who can, it can save a lot of time and money.
Personally, I this kind of work terribly tedious, at best. One would have to pay me at least double my normal rate.
The traditional model might call this role an "in house" conteract recruiter, and I doubt the good ones get paid what a good programmer or sysadmin do, thoug perhaps they should.
If you are "sucky" you might still apply for a $60K job, thinking that you might slide through. But you wouldn't bother applying to a $100K job, thinking that there'd be way more competent people applying so it'd be a waste of time
Never done hiring before, eh?
Is "upvote for x" too reddit-y?
Before clicking the reply button, ask yourself, "Am I really adding something, or should I stop procrastinating and get back to work?"
I still don't see why the child-post was downvoted. In my view I wasn't whining there, merely asking.
So I'm skeptical that everyone here behaves perfectly rationally in the context of the community rules you've listed. And I don't view this as a waste of time, because I'm trying to figure out how things work here.
Edit: OK, forget it. I'm taking it too personally. You're right, asking 'why the downvotes' is also not good content I'd like to read from other comment'rs.
I regret not having applied to many great opportunities as a younger programmer because I filtered myself out, when many who are worse off never do.
Self-promotion: http://blog.codeboff.in/2010/06/25/good-programmers-are-hard...
In conjunction with a phone interview we typically only have an actual sitdown with 2 to 4 candidates out of the initial pool of 100. We recruit out of college so resumes get handed in like candy, but this process has effectively helped us find candidates that are at least capable of learning the monolithic code base and getting fully up and running in a few months.
Our company still has an absolute terrible code base. It is very feasible to nuke skilled programmers once you have them.
Isn't this what happened throughout the industry? (with a very few exceptions).
This is exactly what makes my belief about "great programmers" just went out of the window: no matter how great an individual is, the fact that plenty software houses have terrible code base show something else.
People can blame the businesses, the time-to-market, the deadline or whatnot and I believe you guys.
But at the same time, are you being fair toward your profession at the same time?
If great programmers do exist, I'm expecting them to change these ugly code bases everywhere to the point where 50% of any companies out there would have good code base (and that includes unit-tests)
Given that, I wouldn't expect '50% of any companies' to be good. "If it ain't broke..." is really good advice about 95% of the time. If you're 50-100% overbooked, you don't screw with other peoples' code just to try to make things better around the office.