They're trying to cash in a fat bonus, not getting people a job first and foremost. At least the ones who message me after not reading my profile, just having a single buzzword match.
My guess is people want to feel like coding is something meaningful and worthwhile that they do instead of a lucrative, in-demand job in which they function as an expensive but interchangeable cog.
because there's no unsubscribe. i went through a few recruiting agencies 5 years ago to get a job and now that my contact info is in all these recruiter databases, i get emails and/or phone calls almost daily. Even if I tell one recruiter I'm not interested, there will be a different one bothering me tomorrow. The worst part is that many of them are contacting me about jobs in a city that I don't even live in anymore.
I don't hate them. I have no problem when they contact me through legitimate channels such as LinkedIn or StackOverflow. I even try to respond with a polite 'no' in most cases.
I have a problem with them abusing the git commit logs to get at my personal email as a way of manipulating me.
1) I've never had a positive experience with recruiters.
2) They have an observable tendency to embellish your resume for their own purposes, refer you to other recruiters, and network you in soliciting ways that you don't know about at first and don't agree to.
3) They obfuscate the hiring process so that you and a company cannot directly interact without going through the recruiter, and make it difficult to have a candid relationship in the interview process.
4) They only exist as a middleman, adding an extra step to an interview process which I am opposed to on principle.
You're not doing this, but I really hate it when people minimize complaints about recruiters because they think we're spoiled. Those people tend to really not know much about how recruiters operate.