How we shipped 14 features in 30 days without standups
Standups were the first thing we cancelled when we got serious about ship velocity. Eighteen months of running them. Five engineers, fifteen minutes, every weekday. Then one Monday we didn’t hold one, and a week later we’d shipped two features. By the end of the month, fourteen.
This is the cadence that replaced them — and the reasoning that kept us from going back.
Daily standups optimize for one thing: status reporting. Each person speaks in turn, names what they’re working on, names what’s blocking them, sits down. Multiply by fifteen minutes and a five-person team and you’ve burned seventy-five minutes of synchronous attention every day to produce a state vector everyone could have written down in ninety seconds.
The pitch is that someone, in the room, will hear a blocker and unblock it. The reality is that the unblockers are the same two senior engineers, every time — and they’re doing it in private DMs before standup anyway.
So we cancelled the meeting and kept the part that worked.
The cadence in two parts
The new cadence has two parts. First: every engineer posts a single-line update at 9am in a dedicated channel. The format is rigid on purpose — shipping X today; blocked on Y (need help from Z); follow-up: A. Reading the whole team takes ninety seconds.
Second: when anyone types ‘unblock?’ in the channel, the relevant people drop into a fifteen-minute call, fix the thing, and the call ends. No agenda. No deck. No follow-ups.

The hidden cost of synchronous standups
The visible cost is the meeting itself. The hidden cost is everything that happens around it.
Standups force you to interrupt deep work twice — once to context-switch into the meeting, once to switch back. The recovery isn’t fifteen minutes; it’s closer to forty-five. For a five-person team running standups every weekday, that’s roughly eighteen hours of focused engineering time per week, gone.
They also shape the way work gets reported. People save up their wins for standup, even when shipping earlier would have unblocked someone else. They schedule small status meetings to prep for the bigger status meeting. The meeting becomes a performance, not a tool.
— Sam, an internal engineerI realized I was saving my morning code reviews until after standup so I’d have something to say. That’s when I knew the meeting was the problem, not me.
Both practices are intentionally cheap
The async update is intentionally cheap to write and cheap to read. Three lines. No emoji-mood tracker, no ‘what I’m grateful for’, no chart of yesterday’s commits. Just shipping / blocked / follow-up.
The fifteen-minute unblock call is intentionally cheap to call. We removed every social friction around asking for help. No ‘is this a good time?’. No DM-then-call escalation. Just type ‘unblock?’ and the right people show up in two minutes.
The two practices compound. The written log makes everyone aware of state without spending sync time on it. The unblock channel turns the ‘blocked’ line of the written log into action in under twenty minutes.

What about visibility for the manager?
This was the question that kept us holding standups for eighteen months longer than we should have. The fear is that without the meeting, the manager loses signal on what’s happening.
In practice, the written 9am update is higher fidelity than a standup. You can scroll back two weeks and see the throughput, the pattern of who’s blocked on what, the recurring dependencies between people. Standups are ephemeral. A channel is auditable. We started doing weekly retros pulling from the log; the conversations got more specific, not less.
The manager who needs the standup to know what’s happening is the manager who isn’t reading the log. The standup isn’t the fix; reading the log is.
Common questions
What if someone forgets to post the 9am update?
Same as forgetting to show up to standup — the manager pings them. The forcing function is identical; the cost of compliance is lower because there’s nothing to schedule, attend, or recover from.
Doesn't this just push the meeting somewhere else?
It pushes the unblock conversation to a fifteen-minute targeted call between the two people who needed to talk, instead of fifteen minutes of five people listening. Time spent in sync conversation drops about 70%.
Does this work for distributed teams across time zones?
Better than standups do. The 9am update is whenever your 9am is. The unblock channel works across time zones — you ping when you’re blocked, and the next person online responds. Standups force the time zones into a shared painful slot; the async cadence doesn’t.
How do you handle pair-programming culture?
Pairing is orthogonal to standups. We still pair on hard problems; the difference is we don’t first meet at standup to schedule the pairing. The unblock channel doubles as the pair-up signal.
What tools do you use for this?
A single Slack channel and a video tool — that’s the whole stack. No new SaaS. The discipline lives in the format of the 9am update and the rule that ‘unblock?’ always gets a response within two minutes.
Ship more, meet less.
Sprintrr turns your project briefs into typed plans in seconds — so the work you cancel a standup to do has somewhere to land. No deck. No setup. Generate the plan, ship the work.


