Recruiting Has a Back Pressure Problem
Every hire moves at the speed of one human decision. What streaming engineers call back pressure, why more sourcing only piles candidates in front of the hiring manager, and how to design the pipe around the decision.
Engineers who build streaming systems deal with a problem every recruitment agency owner knows by feel and rarely has a name for. They call it back pressure.
How a pipe works
In a streaming system, data travels through a chain of stages. One stage reads it, the next transforms it, another stores it. Each stage runs at its own speed, and the whole chain can only move as fast as its slowest stage.
When a fast stage feeds a slow one, the work piles up in a buffer in front of the slow stage. Left uncontrolled, that buffer grows until the system runs out of memory and falls over, or starts dropping data.
Well designed systems solve this with demand signalling. Each stage tells the one before it how much it is ready to receive, and nothing is sent until it has been asked for. Frameworks like Akka Streams switch between push and pull automatically, pushing freely while every stage keeps up and pulling only what is requested once a stage falls behind. Capacity stays bounded end to end and the pipe never chokes.
Recruiting is the same pipe
A hire moves through a chain of connected parties: the client who briefs, the recruiter who sources, the screener, the candidate, the hiring manager, the interview panel, and whoever signs off the offer. Every one of them has a capacity limit.
Most agencies run this pipe on pure push. More sourcing, more CVs, more candidates through the door, and the pressure travels straight down the line. Faster sourcing stacks candidates at screening. Faster screening stacks them in front of a hiring manager who has three other priorities and no time for feedback.
The bottleneck moves from one place to another, and the hire takes exactly as long as it did before.
Manufacturing worked this out decades ago. Goldratt's theory of constraints holds that time saved anywhere other than the bottleneck is worth nothing, because the system still runs at the speed of its constraint.
The buffer in recruiting is made of people
In software, an overflowing buffer drops messages. In recruiting, the buffer is made of candidates, and they do not wait quietly.
A shortlist sitting in a hiring manager's inbox for ten days is a queue, and the best candidates leave it first, taking other offers or losing interest. The weaker ones stay. Every day in the queue lowers its quality.
Overloading the decision maker backfires as well. Send twelve CVs instead of four and the hiring manager does not decide three times faster. They decide slower, defer, or ask for more, which sends the pressure back up the line as rework.
The last stage is always human
At the end of every recruiting pipe sits a decision made by a person. Someone has to look at a candidate, say yes, and carry the accountability for that hire. That step will not be automated away, and it should not be.
The human decision is the permanent constraint, and it sets the real capacity of the entire operation. Everything upstream can run ten times faster and the hire still happens at the speed of that one decision.
AI is making it worse
AI has made sourcing almost free. An agency can now generate hundreds of matched candidates and personalised outreach in an afternoon. Pointed at the top of the pipe, that only raises the pressure on the one stage that cannot scale, so more candidates go cold in the queue and more hiring managers drown in shortlists.
Buying another sourcing tool or hiring another resourcer adds pressure to a pipe that is already backed up.
Design the pipe around the decision
The agencies that close faster treat the final decision as the scarcest resource they have and build everything else to serve it.
- Let the decision maker's capacity set the flow. Agree up front how many candidates the hiring manager can genuinely review this week, and send that many.
- Send fewer, stronger shortlists. Four candidates with clear evidence beat twelve that need sorting.
- Put everything the decision needs in one place: why this candidate, the risks, salary fit, availability, and how they compare.
- Measure the queue. Track how long candidates wait between stages, and treat waiting time at the decision step as the number that matters most.
- Point automation at preparing the decision, and keep it away from flooding it.
Speeding up any stage is only worth doing when it makes that final human decision faster and easier. Everything else moves the bottleneck around.


