I'd suggest getting organised as a preventative measure against this kind of thing, but that's likely to go down like a lead balloon here. As long as there's a shortage of developers, we're somewhat safe, but that position is very precarious.
Indeed, organization seems to be anathema to the tech-libertarian crowd around here (or, at least, the vocal part of the crowd). To a lesser extent, it is hard to think about this future when times are good, which they definitely are now.
I'm a youngin' around these parts, but it makes me anxious to think about what I'll be doing 30 to 40 years from now. Technology is moving sufficiently quickly and corporate humanity (for lack of a better term) is not keeping up.
I have been wanting a tech worker labor organization since 2002. It was unpopular on Slashdot, too, but that doesn't mean it isn't a smart move for our tribe as a whole, even at the expense of everyone else.
Too many of us think they can think their way out of any situation with sufficient amounts of cleverness, but eventually, clever goes up against brute force and overwhelming numbers and loses.
My best guess has been that there's an oversupply of incompetent "developers" trying to play the numbers game, doing enormous numbers of interviews hoping they'll find a company that will hire them anyway.
If incompetent developers do 100 interviews per job, and only last at jobs for 6 months before being fired, and competent developers do single-digit interviews (or 0, getting hired through networking) and stay employed for years at a time, a very small proportion of bad actors can be severely over-represented in interviews.
I think this is correct, however, it doesn't completely explain why I'll go months without meeting a better applicant. If there were a surplus of capable mid-level engineers then wouldn't I see them too?
Location, the kind of position, perceived company reputation and pay...
I've been on your side of the table for a similar role and had the same experience. Literally 20-30 candidates who can't answer basic questions for every 1 who can (and usually the 1 is "just ok").
I think it's just due to the particular pool your company is dealing with. Maybe there is a surplus, maybe there isn't, but you're not able to judge that objectively from your vantage point.
Well, why would those capable mid-level engineers, who probably already have decent jobs, want to interview at your company?
I'm not saying this to be snarky. If you don't have a good answer to this, that probably points to your issue. If you have to think a bit to answer that, it's probably also an issue.
People who can barely write a for-loop go to dozens of interviews per job they get. People who are very competent go to two or three, tops, per job they get.
An engineer needs to be involved in the initial phone screening.
At my previous company we usually were able to find someone within a reasonable amount of time to fill an open position. One day, HR decided to seize control of the hiring process. They would conduct all of the resume and initial phone screening and then hand us a few "approved" resumes. It became impossible to find anyone after that.
There will always be a shortage of any type of worker...
...willing to commute from their home to your premises
...and work with your crazy cargo-cult process
...on your badly-architected, tech-debt-riddled legacy system
...for the crap salary you are offering.
I'd recommend suggesting it. You might be pleasantly surprised.
(I'm not quit-my-job-level supportive, but I'd like to join such an effort (as long as it wasn't michaelochurch) - so what's the way forward? Joining a general union until there's a critical mass that can spin off as a software-specific one?)
> Joining a general union until there's a critical mass that can spin off as a software-specific one?
There's a number of software workers in "general" unions already, particularly (but not exclusively) public sector workers. And there's arguably quite a bit of utility in being part of a bigger union like SEIU, IWW, etc.