You're missing an adjective from your observation: qualified.
For any given position, even when you're pretty specific on the requirements, you will get an onslaught of applicants who have absolutely no business trying to apply for said position, but they do it anyways just because it vaguely matches a skillset they have and they need a job.
This isn't a criticism of such persons; it's foolish for people to think that a word for word perfect job exists just for them, and kudos to those willing to be a bit flexible on what they previously felt were non-negotiable aspects of jobs (I am referring to things I personally consider trivial, in this case, but I feel that when it comes time to start negotiating, said items are thrown out first as bargaining chips)
We have many employers seeking a specific type of qualified person; we have qualified and unqualified people all looking for jobs; it can be a bit messy to sort the two. This is why the interview process exists.
(*and will accept what we're paying)
I've seen people in other fields with a lot less education do a lot better. It really makes me sceptic about the shortage of developers in Europe. If there really would be a shortage, surely developers would get paid more.
Or are you saying that if they paid more, already employed applicants would jump from another company, leaving a job opening at their current company? If this is the case, it still means that there are fewer qualified candidates then openings, and no amount of raising pay will (in the short term of ~4 years) mean there are enough qualified candidates.
The best jobs still require an inside recommendation. It is very rare that you’ll be able to score those just by applying online (if the JD even goes up at all online).
This works for smaller businesses that can be flexible and are not really liable/viable targets for anything.
Once a business gets even some traction and size, this becomes a wasted effort, if not an annoyance to the manager. Most of the time I choose not to respond as it's just the safest option for us, or I redirect the email to our HR.
Most of the managers making the decisions do not do hiring as a full time job, it's just an aspect of their job. While it can be enjoyable, it's also very emotionally draining and physically taxing (non-stop interviews on top of regular responsibilities) and when people go outside of the normal process like this (and worse, raise a stink if you don't respond to their deviation well), it just adds more headaches for me.
So the above advice might work sometimes, but be aware there is another side.
There are two reasons for that wide distribution:
1. Lack of preparation/expectation management. I have seen people apply for development jobs with no skills or experience thinking the job is there to train them. It is no surprise (except maybe to the applicant) that they are quickly disqualified. It is absurd how commonly this occurs.
I have also seen college educated computer science graduates get a job and completely struggle. There is some expectation among some of these guys that they deserve an awesome job, because they went to an awesome school, and everybody has always showered them with praise. The worst is when one of these guys get a job writing JavaScript only to discover it isn't anything like the Java they were taught at school. Instead of accepting reality it is simply easier to blame the language and do everything possible to make it behave and look like Java. epic fail.
2. Selective bias. How do you define competent or qualified? This is completely subjective and varies by organization. I have encountered several organizations where the developers cannot read code. They compensate with assertion testing, frameworks, external packages, layers of tooling and so forth. The unwillingness of a candidate to accept that stupidity is certainly an incompatibility and can be seen as a lack of competence. If the interviewing party likely struggles with literacy it is not something they are likely to test for, for example.
In my experience under-confident hiring teams always want super competent applicants until they see what super competence actually is. It sounds absolutely fantastic in theory until they see it in practice. Then the insecurity sets in. What is really tragic about that is not that incompatibilities happen, but that insecure teams often don't see it until far after they have wasted people's time or after they have hired the applicant only to wish they hadn't.
My recommendation for experienced developers is to always identify these incompatibilities as early as possible. Unless equity is attached this is so much more important than compensation.
---
In a perfect world people would learn to read and write code before applying for jobs, which implies literally reading and writing (not tooling or dicking around with layers of abstractions). We don't live in a perfect world as evident by many applicants and employers.
Expect to reject 95%+ of applicants.
I pity the people that have to filter that.
The amount of cut-and-paste I've seen on "take home" assignments is just staggering.
I've only ever used it for pre-screening before scheduling phone interviews, and so only a handful of very simple questions as I'd have considered it unfair to ask anyone to put much effort in that early in the process. I always cut and paste a few sentences into Google. One hiring round in particular stands out to me, as a substantial majority of candidates had cut and pasted answers. There were always some, but that was extreme.
The worst thing was that many of them got the answers wrong. I'd have been open to considering them if someone honestly told me they didn't know the answer but was able to find an answer on Google, and showed me they'd been able to look up the correct answer.
But we got things like someone trying to pass of a one page cut and paste from an Oracle manual to a question about MySQL that required a one sentence answer as their own. And someone who cut and pasted a reply to the same question from a forum post, but who failed to read on to where other commenters had explained at length why the answer they'd cut and pasted was wrong.
I mean, I often search for solutions to things I don't know by heart. Knowing how to find the right solution by search is a skill itself and a developer that knows how to learn can be valuable, but the combination of dishonesty and apparent failure to be able to ascertain the quality of the responses they found was terrifying given that many of these applicants had believable CVs that included years of working as developers elsewhere. (Of course given their willingness to lie about their answers, I can't really trust CV's either given we never got far enough in the process to request references; I'd like to think their CVs were fake too, because the alternative is worse)
Really it was exactly in my wheelhouse where I do things a thousand times more complicated every day to general acclaim of the people I work with.
And I had the panic/freezing thing I've read about other people having before but never experienced (at least not that extreme) and as a result I totally flopped. I mean I sort of did what was wanted but not completely. I'm not explaining exactly what it was they wanted because it is too embarrassing to even talk about.
This has made me consider that maybe the number of applicants I hear about who cannot do the simplest thing has to do with some sort of personal panic/problem/not liking the particular testing method and not some actual permanent incapacity.
on edit: and not just embarrassing but also distressing like a guitarist suddenly unable to play guitar. It is actually hard to describe what the experience was.
If it's any comfort, stage fright is something you can overcome. It's not easy, but it's doable.
At any rate I do pretty well for myself and while it was unpleasant, it is past, just - made me wonder.