26.2 · Reliability, payload budgets, and analytics and experiments

Every design has the same quiet questions: what happens when a dependency is slow, how many bytes does this screen cost, and what do we measure without harming the people we measure. Staff-level answers have crisp answers to all three.

Mental model. Treat failure, bytes and measurement as first-class design inputs, with budgets and rules, not afterthoughts.

Failing well

Deadlines, circuit breakers, degradation tiers, bulkheads and kill switches.

  1. How do you design a client for reliability: deadlines, circuit breakers, degradation tiers, bulkheads, kill switches and the signals that tell you it works? 26.2.1 · L5
    Reliability on a phone means the app stays useful while the network, the backend and its dependencies misbehave. Start with deadlines: give each user action a…

Bytes and fan-out

Payload budgets, deltas, compression and fan-out on write versus read.

  1. How do you set payload budgets and reduce bytes: field selection, deltas, compression, image sizes, and what fan-out on write versus read means for the client? 26.2.2 · L5
    Bytes are latency, battery and (for some users) money, so give every important screen a payload budget (a target for the data needed before the screen is…

Measuring

Analytics without privacy damage, and experiments you can trust.

  1. How do you design analytics and experimentation that respect privacy: event schemas, consent, minimisation, stable assignment, exposure logging and sample ratio checks? 26.2.3 · L5
    Measurement is a product feature with a cost, and the design goal is the least data that answers the question. Define an event schema (name, version, typed…

More in System design & staff+