Why the data engineers you want are not applying
If your ad has been open for two months and the applications are all wrong, the ad is not the problem.
A pattern we see often enough to write down: an ad has been live for two months, there have been forty applications, and none of them are close. The instinct is that the ad needs rewriting, or that the market is empty.
Usually neither is true. The ad is reaching people who are looking, and the engineers you want are not looking.
Who is actually reading job ads
An experienced data engineer in a stable role has very little reason to browse. They are not unhappy enough to search, and the work is interesting enough that a Tuesday afternoon is spent on the thing they are building.
That means the applicant pool for any given ad skews towards people between roles, people whose current job has gone wrong, and people early enough in their career to be actively moving. All three groups contain excellent engineers. But if you have described a role that needs someone who has run a platform through two years of growth, the odds of that person being in this week's applications are poor.
What that changes
It moves the work from screening to searching. Instead of filtering a pool, you are identifying specific people and giving them a reason to have a conversation they were not planning to have.
That reason has to be about the work. Not the company's mission, not the perks, not a salary range that is in line with what they already earn. What is the system, what is broken about it, and what would they get to build.
Things that make the approach worth reading
- Specifics about the stack that could not have been guessed. "You would be replacing a nightly batch that takes six hours and breaks about once a fortnight" tells them more than a paragraph about culture.
- Honesty about the state of things. Engineers assume a mess. Describing it accurately builds more trust than pretending otherwise, and it filters out people who would have left when they found out.
- Who they would work with. At senior level this is frequently the deciding factor and it is almost never mentioned.
- A reason it is this person. Not their job title. Something they have actually built.
The uncomfortable part
This is slower. A search run properly takes longer to produce the first candidate than an ad does, and it produces fewer of them. Three to five people in a week, rather than forty in a month.
The trade is that you spend your time interviewing people who could do the job rather than establishing that they cannot. For a role that will take six months to replace if it goes wrong, that is usually the better trade.