There is a world of difference between being approached by a recruiter who has been retained to find a suitable fit for a given company, and a recruiter whose primary goal is to offload his catalog.
It is 2014, and the IT field has a curious, bifold problem. We can not find enough good developers, yet are bombarded by messages from various recruiters trying to provide us with more candidates to fit our hiring needs. From a distance, it sounds like a wonderful problem to have.
It's not.
In a world of supply and demand, we care not only about quantity, but also quality.
The good developers generally have no trouble finding jobs, and therefore don't need recruiters' help. With the best and the brightest taken off the pool, the recruiters are mostly left with merely the mediocre and the bad ones. This in turn has collateral effects: any developer coming in via a recruiter already carries the stigma of "not good enough to find job on their own".
If you're looking for a new job, is that the image you want to project?
From interviewing and hiring point of view, the situation isn't any better. With recruiters and their solicitations, we see candidates who have not shown personal interest working for us. It is possible the recruiter has not even made the candidate aware of the companies they keep approaching. Why would they? The candidate might apply directly, cutting the middle man out and costing the recruiter their fees.
The rejection rates from interviews are high enough even with candidates who have applied directly. These developers are the ones who have done their research and decided that they want to work in our field, with the technologies we are using.
Contrast that with the recruiter offerings: developers who are merely looking for something new (or anything at all). Some of them will undoubtedly be good, but they are lost in the noise. As good developers will have no trouble finding employment, they will also vanish very quickly from the recruiters' catalogs. In order to have even a hope of tapping into this particular resource, we would need to constantly request solicited candidates in for interview. This, in turn, would cut into a limited resource - bandwidth. And to top it all off, once we show a propensity to approving recruiter offerings, the number of solicitations would be very unlikely to go down.
I don't know if there is a solution. People will always be searching for jobs, and companies will always be hiring. Helping supply meet demand is useful.
I just wish there was a better way to do it.
(Cue "Heard It Through The Grapevine"?)