Architecture Review
Thursday. 2:07. architecture review.
my RFC on screen. Nine faces. Nemesis top right because alphabetical order. likely.
I am on the failure modes slide. boxes aligned. arrows mostly straight. This part should go fast.
Nemesis unmutes.
"Quick question. The diagram says five retries and then dead-letter. Section four says we retry indefinitely. Which one is right?"
I know this.
"Both."
No.
"I mean it retries indefinitely and then moves to dead-letter."
Indefinitely and then.
Nemesis is very still in his little square.
"After five attempts?"
"Right."
"So not indefinitely."
"Not literally, no."
why am i defending indefinitely.
"That wording is from the earlier design," I say. "The diagram is current."
Great. stale RFC. my RFC.
PM asks if I can fix it now so the decision is clear.
"Yep already on it."
I am not already on it. I click into the doc while sharing my whole screen. Find section four. There it is.
failed messages retry indefinitely with exponential backoff
Large font. Extremely legible.
I select indefinitely. miss the y. select again.
type up to five times.
Nemesis says "thanks" like i have completed a small request for him. I am annoyed.
"Yep. just cleanup."
Cleanup. As if I found it.
We continue.
Later Nemesis proposes moving retries into a shared worker. One retry service instead of each team maintaining its own. Cleaner diagram. Three boxes disappear.
People like disappearing boxes.
"Would notification backlog block billing retries?" I ask.
"Different partitions."
"Same worker pool though?"
Nemesis looks back at his diagram.
"We could isolate workers by queue."
"So seperate workers."
small pause.
"Logically separate," he says.
"Right. Shared service, seperate workers, seperate scaling."
I let the list sit there. Not adding "seperate on-call" because restraint.
PM asks what we gain in v1.
Nemesis says standardized retry policy. Good answer actually.
I say we can standardize policy without sharing the runtime.
also good.
"Either works," Nemesis says.
Either works now.
PM keeps service-owned workers for v1. Revisit shared service later.
Design approved.
Nemesis says "nice work" before leaving.
"Yeah thanks for the catches."
Catches. plural. why give plural.
His camera disappears.
Decision notes have two bullets:
- clarify retry limit
- keep service-owned workers
I move the second one above the first.
Structural decision first.