Skip to content

adr vs whitepaper

Topic: Should we adopt async-first standups?
Axis varied: format
A: Architecture Decision Record B: Whitepaper

Both examples address the same topic and (by default) share every axis other than format. The only deliberate variable is which format the writing was rendered through. Read both and ask: where does the framing change? Where does the vocabulary change? What does the reader take away from A that they would not take away from B, and vice versa? The format swap is the entire cause of those differences.

A: adr

ADR-0014: Adopt Async-First Standup Format

Section titled “ADR-0014: Adopt Async-First Standup Format”

Accepted

The engineering team has grown from 6 to 11 engineers over 18 months. The team now spans four timezones: US Pacific (3 engineers), US Eastern (3 engineers), UK (2 engineers), India (3 engineers). The current synchronous standup is scheduled at 9am Pacific, which is 9:30pm India Standard Time.

Three forces pushed this decision:

Timezone asymmetry. The India-based engineers are disproportionately burdened by the meeting schedule. Attendance data from Q1 shows the three India engineers averaged 3.2 standup appearances per week out of 5, compared to 4.6 for US-based engineers. The shortfall is not disengagement - it is 9:30pm.

Information loss. Status shared verbally in the meeting does not persist. We have documented three incidents in the past quarter where an engineer spent more than an hour on a problem that had already been solved and discussed in a previous standup. There is no searchable record.

Meeting-to-value ratio. The standup averages 14 minutes. Analysis of the past month shows an average of 4.2 minutes of content that changed someone’s behavior - a blocker raised, a dependency flagged, a context shared. The remaining 10 minutes is status that required no response from anyone.

Alternatives considered: rotating the meeting time (solves equity but adds overhead and still does not create persistence), eliminating standup entirely (loses coordination value), and adopting an async tool like Geekbot (rejected on cost and added tooling complexity - Slack templates serve the same function).

Replace the synchronous daily standup with an async standup update in #team-standup. Engineers post by 10am their local time using a pinned template:

  • Shipped: what completed in the last 24 hours
  • In progress: current focus
  • Blocked / at risk: anything that needs attention, with @mention of the person who can resolve it

The on-call engineer reads the channel by 9am Pacific and responds to blocked items within 30 minutes during business hours. The synchronous standup slot is replaced with a 60-minute Thursday working session - not a status meeting, reserved for discussion requiring real-time exchange.

  • All engineers participate on a schedule that fits their timezone
  • Status information is persistent and searchable
  • Blocked items route directly to the person who can resolve them via @mention
  • Engineers recover 70 minutes per week previously spent in synchronous status reporting
  • Social cohesion that comes from shared daily presence is reduced; the Thursday session is a partial substitute but not equivalent
  • The format depends on consistent participation - if engineers stop posting, the channel’s value drops for everyone
  • Blockers that require nuance are harder to surface in a structured three-field template than in a live conversation
  • On-call rotation adds a daily channel-reading responsibility, but this replaces the meeting facilitation responsibility previously on the same rotation
  • The Thursday working session is new overhead for some engineers who previously skipped standup

B: whitepaper

Async-First Standups for Distributed Engineering Teams: An Evidence-Based Analysis

Section titled “Async-First Standups for Distributed Engineering Teams: An Evidence-Based Analysis”

Synchronous daily standups, a near-universal ritual inherited from co-located agile practice, impose disproportionate costs on geographically distributed teams. For an 11-engineer team spread across four timezones, the sync standup we examined produced approximately 4 minutes of useful signal inside a 14-minute meeting, while excluding remote contributors at structurally different rates: 3.2 of 5 attendance for engineers in IST versus 4.6 of 5 for engineers in US Pacific. This paper argues that async-first standups, executed with a disciplined written template and a single weekly synchronous backstop, recover meeting time, equalize participation across timezones, and produce a durable written record. We document a 30-day trial, summarize the early data, and offer implementation guidance for teams considering the same shift.

The daily standup originated in co-located software teams in the early 2000s. Its design assumptions (a single physical location, near-overlapping working hours, low cost of in-person attendance) do not survive contact with modern distributed engineering. Two consequences follow. First, the meeting time itself is no longer “free”; it crosses time zones and consumes meaningful evening hours for someone. Second, the medium (spoken status) does not produce an artifact teammates can reference later, which becomes a navigational problem at scale.

The team studied here exhibits both pathologies. With a sync standup at 9am Pacific, the four engineers in IST attended an average of 3.2 of 5 weekdays; absences clustered on local weeknights when family or rest commitments competed with the call. US-based engineers attended 4.6 of 5, but reported the meeting felt low-signal. Post-meeting interviews showed that, even among attendees, recall of teammates’ status by mid-week was poor.

The team replaced the sync standup with a written async post in a dedicated Slack channel, due by 10am local time, structured around three fields: Shipped, In progress, Blocked or at risk. Blockers required an explicit @mention. The recovered meeting time was banked into a single 60-minute Thursday working session, cancellable when no agenda existed.

Week 2 results showed:

  • 85.5 percent on-time post completion (47 of 55 expected).
  • Median blocker resolution of 18 minutes from @mention to substantive reply, with P90 at 2 hours 40 minutes.
  • 100 percent weekday participation from IST-based engineers, a first for the team.
  • Net recovery of approximately 5 person-hours per week after accounting for the Thursday session.

Qualitative signal was mixed but instructive. Engineers who were strong verbal communicators reported initial friction adapting to the written form. Engineers who were quieter in sync standups reported a substantial increase in their effective voice on the team. The friction surfaces a feature: written status forces specificity that spoken status often elides.

Three design choices materially affected outcomes. First, the cutoff time was local rather than absolute. A global cutoff would have re-introduced the timezone inequity the change was meant to fix. Second, blockers required an @mention, not just a description. This shifted blocker resolution from a passive scan to an active routing decision, owned by the on-call engineer. Third, the synchronous backstop was preserved deliberately. Async is not a replacement for high-bandwidth conversation; it is a replacement for low-bandwidth status.

Two failure modes appeared. Some engineers wrote 200+ word posts, defeating the skimmability that makes async tractable at team size. Some on-call engineers spent 25 minutes per morning on triage, above the 10-minute target. Both are addressable, but teams should plan for them rather than discover them.

For distributed engineering teams considering this shift:

  1. Run a 30-day trial with a clear retro instrument before the trial begins. Decisions made on partial data are reversible only at high social cost.
  2. Use a fixed three-field template. Free-form async status drifts into either novella or silence.
  3. Make blockers active, not descriptive. Require routing in the post itself.
  4. Preserve at least one weekly synchronous slot. Cancel it explicitly when not needed; do not let it expand to fill the recovered time.
  5. Measure blocker resolution time, not just attendance. Attendance was never the goal; flow was.

If async-first standups generalize, they imply a broader shift in how distributed teams allocate synchronous attention: away from recurring status rituals and toward intentional, agenda-driven conversation. Status becomes a durable, searchable artifact; meetings become decision instruments. The trial reported here is one data point. The next phase of work is replicating it across teams of different sizes and timezone spreads.

  • Internal trial data, Week 1 to Week 2, captured in the team’s #team-standup channel and the trial retro document.
  • Engineering manager 1:1 notes, Days 8 to 14 of the trial.
  • Prior baseline attendance data, six-month rolling average preceding the trial.