The physics: state loading is the cost center
Deep engineering work runs on loaded state — the mental model of the system, the bug’s reproduction path, the refactor’s dependency graph — and loading takes 15–30 minutes of uninterrupted ramp. A meeting doesn’t cost its 30 minutes; it costs the state flush plus the reload, which is why a 10:30 sync in the middle of a morning costs the whole morning. Every calendar decision below follows from this one fact.
Maker blocks: fewer, longer, fused
Engineers need fewer, bigger blocks than generic advice suggests: one fused 2.5–3 hour block beats two 90s for state-heavy work, because the second 90 pays the reload toll again. The build: a recurring morning block (or your peak), titled by the artifact ("Auth refactor — token service"), Focus-time type with auto-decline on, and the exit ramp honored — the last ten minutes write the "next three moves" comment in the code or the ticket, where tomorrow’s reload actually starts. Two such blocks per week that reliably happen outproduce five that exist on the grid and die in practice.
Interrupt budgets: on-call, reviews, and the question tax
Engineering’s legitimate interrupts get scheduled containers so they stop being ambient: code review is a twice-daily 30-minute batch (morning and post-lunch — reviews within 24h, nobody blocked, zero mid-state pings); the question tax becomes posted office-window hours ("ping-friendly 11–12 and 16–17") that juniors actually prefer to guilt-ridden ad-hoc interrupting; and on-call weeks invert the whole template — no deep blocks scheduled at all (they’d be fiction), the week explicitly re-planned around triage, and the calendar marked so teammates route non-urgent asks elsewhere. Pretending an on-call week is a normal week is how engineers get the worst of both.
The cluster pattern: sacrifice a day, save the week
Scattered meetings are the maker schedule’s real enemy — five meetings across five days can zero out five mornings. The negotiation worth having (once, with your team lead): cluster the recurring load onto one or two afternoons — standup edges (9:50 or 12:45, never 10:30), sprint ceremonies stacked Tuesday PM, 1:1s in the same corridor. The resulting "meeting Tuesday" feels heavy and buys three untouched deep days; engineers who make this trade never trade back. For meetings you can’t move, the partial-attendance norm ("my part is the first 15") keeps the state-flush radius contained.
Mid-state, the question "how long until standup?" must not cost a tab switch — the switch is the flush you were avoiding. A toolbar chip showing minutes-to-next, via Calendar Extension for Google Calendar™, answers it in peripheral vision; the join button handles the transition when it arrives. Small tool, but it guards exactly the asset engineering days run on.
Frequently asked questions
Attribution plus clustering, in that order: name blocks by deliverable and mention block-produced work in standup ("the migration plan came out of Thursday’s block"), then propose the cluster trade with your lead. Engineers who show receipts get their mornings; abstract deep-work advocacy gets sympathy and 10:30 invites.
They are the rare synchronous deep work: schedule them like maker blocks (90 minutes, prepared inputs, no fly-bys) rather than like status meetings. A design review run as a meeting produces opinions; run as a prepared session it produces decisions. Fight for the pre-read norm here hardest.
Invert the morning: 8:00–9:50 becomes the deep block (protected by the standup’s own edge), 10:15 onward takes the shallow batch and reviews. A mid-morning standup only destroys the morning if you schedule the deep work after it — put the state-heavy work where the interrupt can’t reach.
Pairing is scheduled deep work with a built-in interrupt shield — calendar it as fused blocks exactly like solo work (2–3 hours, titled by artifact). What changes is recovery: pairing burns social energy too, so the seams after pairing blocks need to be real breaks, not review batches.