Skip to main content

What to memorize

Do not memorize textbooks or SDS’s full catalog. Memorize language, method, and a few facts you can defend.

Domain recap and vocabulary: Domain. Method: Method. Mocks: Problems.


1. The SDS method — overlearn this​

Vague prompt → keywords:

  1. Verbs → use cases, and what “correct” means
  2. Nouns → entities, who may write
  3. Adjectives → constraints; each adjective earns a component

Open every design with: where truth lives, who may see it, what the UI does when we or upstream are behind, what a team can ship in v1 vs what is a platform bet.


2. Four challenges + NFR defaults​

SDS “big four.” Pick from the business, not from Twitter.

NFRCorrectness-heavy default
ConsistencyStrong on money, entitlements, accept. Eventual OK for “processing” if labeled
AvailabilityUnavailable write > wrong write on submit
LatencyReads feel fast on entitled data; ingest may lag if the UI is honest
ScaleNot always 100M users. Pain is often burst at deadline, hot key, multi-tenant leak

CAP in English: stale answer vs unavailable write. Money / entitlements / submit = CP. Progress dashboard can be AP if it says it is approximate.

Loan-market table: Domain NFRs.


3. Core Lego pieces​

SDS building blocks: stateless services + load balancer, replication, partition, queue.

Then when lying is expensive: idempotency, outbox/saga, row-level authz, audit log, DLQ, observability on workers.

SDS master template is “write queue → workers update DB/cache → read cache.” Do not recite that as the record used to pay or vote. Cache is behind as_of / settled / snapshot id.


4. Five primer facts​

  1. Reveal one box at a time so each is forced.
  2. Consistent hashing remaps ~1/N keys on resize; hash-mod-N remaps almost all.
  3. On partition, AP still answers (stale); CP refuses on the cut-off side.
  4. Optimistic lock: version column; loser retries.
  5. Queues are at-least-once → workers must be idempotent.

5. EM close script (every board)​

Team topology → v1 cut → definition of done (authz negative tests, idempotent submit) → SLOs → on-call → exec two-hows.


6. Two stories cold​

See proof stories:

  • Temelio mapping layer (two ledgers + workshops).
  • One Phia story: ingest off the request path or onboarding.

Skip​

Framework internals, every vendor SKU, Twitter fan-out, LSM trees, Spark, Lambda/Kappa — unless they ask.