A warm pipeline that has not been touched since February is not a pipeline. It’s an archive, with flattering labels on the columns.
I have reported one as healthy, which is why I am rude about it now. Staff engineer search, forty names in a tab, every cell filled in and the number forty went into a weekly update as if it meant something. When the role opened up again I started working down the list. Name one had moved somewhere I had already lost two candidates to. Name two bounced. Name three I had added for some reason I could not reconstruct. And I’d been the one who added it. It was not pipeline work, a dozen rows in, it was re-sourcing the role out of a worse position than the one I had in April, because in April I at least still remembered what I was thinking.
A pipeline is people plus a date
The word is used as the name of a set of people. It points to a group of people and a moment, and the moment is doing the heavy lifting. Remove the moment and what remains is a list of strangers with job titles beside them.
Which is also my objection to the term passive candidate. It’s a sales word. There are people who are in the wrong timing today, and in March they will be in the right timing, and the only thing that separates the two states is a date that nobody wrote down. To describe them as passive is to make the state sound permanent, and to make the list sound like an asset. A truthful pipeline report would include two columns that no one wants to add: the last date the contact info was verified and the last date a human spoke with the person.
Everything around a name rots at its own speed
Employer and Title go first. People move, teams get renamed, a reorg changes the word in front of the function and your notes now describe a job that no one has.
Work email goes almost as fast. It fails silently which is the worst of the two properties. Mobile numbers are the most durable thing in a sourcing record and generally the hardest thing to have got hold of in the first place.
Evidence of competence hardly fades at all. It says something true about the way a person reasons, four years ago. A long maintainer history, a thesis, a working group that someone has been sitting on since before their current job existed. Same thing.
And your own thinking about the game is the fastest of all, because most of the time it never got written down anywhere.
The loss that actually costs you something
It takes two minutes to find the title again. The thought doesn’t come back. I can’t re-derive what I observed around 11:30 one night, when a candidate’s commit history and the architecture problem buried on page three of the hiring manager’s brief just so happened to be the same problem described in two different vocabularies. And that was the entire game. It was in my head. The tag told me who her current employer was. After six months it was all that was left.
A shortlist is a list of names only, without evidence attached. It feels like work because it’s formatted like work.
What the software is keeping when it works
The shift to pay for is the shift where sourcing software becomes a record of research rather than a car park for names. Same forty people. Only each one comes in carrying where they were found. What the evidence was, which brief they were surfaced against. What the reasoning looked like on the day. Half a year on, that’s a short case rather than a row in a grid.
You can tell which pipelines were built that way, because those are the ones anyone reopens. The ones built as lists are rebuilt from scratch, and whoever does the rebuild says something unfriendly about the sourcer that worked the role before them. I’ve been on the other side of that.
Provenance is more important than it sounds. A first message is like it was written by a human who checked if you know someone because of a particular talk or a particular module they have on GitHub. It’s also what allows a colleague to take the role off you without a handover call which on an agency desk happens at least twice a quarter and usually a Friday.
My best string has a shelf-life
Every sourcer has a boolean that they take quiet pride in. Nested brackets, four spellings of the same framework, exclusions bolted on after every bad batch. So did mine. In May it found six, two of whom reached the final stage.
Try the same string in October and it still works, in the narrow sense that results come back and the count at the top of the page looks respectable. And that is precisely what makes it so hard to catch. A string doesn’t break loudly. It tightens. The people it found are gone, the vocabulary has drifted, and a title that described an earlier scope of work before a restructure describes something smaller after it. Self-description splits by community as well. The same skill set has three different names depending on whether its owner came out of academia, a consultancy or a product team. A string tuned to one of those three politely skips the other two.
One index is no road map
In a hard search, there comes a time when a single professional network has put up all it has. Results keep on repeating. You start seeing profiles from a totally different role you worked on last quarter and that’s when you stop running the query again with a new Chrome extension bolted on.
Everyone is watching the same index. So the people with a polished LinkedIn profile are getting contacted all the time and are sick of it, and the people with none at all are basically invisible. A good chunk of the strongest contenders are in that second group for hard engineering and for regulated work, and their work is public. Issue threads and maintainer history . Meetup listings and conference archives. Articles from Google Scholar . Preprints from arXiv . Clinical literature from PubMed . Licensing records, bar admissions, regulatory filings. Standards bodies and mailing lists that have been around for 10 years. A Slack or a Discord that the field considers its real home.
If you haven’t updated your profile since the job before last and you are a longtime goalkeeper of a well-used library, you are not a hidden candidate. They’re a public nominee, outside the one place everyone agreed to look.
The non-answer you can’t read
A drip comes out. Dashboard says sent. Nothing comes back. And now you are left wondering whether the pitch was wrong, the timing was wrong, or the address stopped existing when the person changed employer a year and a half ago.
Then the response rate is no longer a measurement, but a mood. I’ve rewritten a perfectly good opening line three times over what was a deliverability problem. Contact details confirmed against more than one independent source help fix that, not by making outreach land, but by turning a non-reply into information instead of noise. But you still won’t find out why the good ones said no. The silence just stops telling you lies about it.
The intake is where most of this is already decided
Most searches get lost in the intake meeting before a single string is written. There is no such role at that level, in that city, with that background, for that number. And eventually, everyone finds this out. The question is, does it come up in week one or week nine? Week nine is the sourcing jam, three people on the same req, overlapping strings, nobody willing to say out loud that the brief is wrong.
Week one is possible because you have a pipeline built as a market map, not a name list. Which employers actually make people successful in this role. Which are cutting staff at the moment. The addressable population if the job is hybrid and what disappears from it if it is not. That turns the uncomfortable conversation into a briefing with two adjacent role shapes attached that are indeed present.
It also means that the second search against the same population is an update, not a rebuild, which is where this work begins to compound rather than reset.
What none of that does is tell you the job is real, or that the manager will really hire outside his normal profile, or that the candidate that looks perfect is already three weeks away from signing with somewhere else. It will not hear the pause on the phone. And when the slate exports into Ashby or Workday, someone still has to review the duplicates, because two records of the same person with different notes on them is how a good candidate gets hit up twice in one week by two colleagues, and how the one who asked to never be contacted again gets contacted again.

