Leaderboard & Counting Service  ·  View 01 of 21  ·  Context and scope

System Context

Who generates the numbers, who consumes them, and the one decision the platform refuses to make.

Editable source SVG draw.io All views
Accountable for the number Product owner Platform engineer People who generate the numbers Product member Product engineer Trust & safety analyst Systems it reads and writes Product backends Member directory Identity provider Analytics warehouse Leaderboard & Counting Service count, rank, publish Consumers of the result Product clients Reward & fulfilment Notification service earns, views rank declares counters retracts, freezes emit events display names authN export owns the surface owns capacity render rank standings rank changes Leaderboard & Counting Service — System Context Person or role External / third party synchronous batch event / async The platform never decides what earns a point: the product does, and emits the event. Display names are resolved from the member directory at read time and are never stored in a counter. v 1.0 · owner Platform Architecture · date 2026-10

Decisions

  • The platform never decides what earns a point. The product emits an event with a signed delta; the platform counts it. That boundary is what makes one service serve 25 unrelated product surfaces.
  • Display identity is resolved from the member directory at read time and never stored in a counter, so a counter row carries a pseudonymous reference and a number and nothing a leak could use.
  • The reward service is in the context as a consumer of closed standings only. Nothing pays out against a live projection.

Deliberately out of scope

  • The rules of the game: what counts as a lesson completed, a valid ride or a legitimate vote.
  • The screens that render the number, and any product notification logic beyond a rank-change event.
  • Analytical querying of counting history — the warehouse receives an export and is never on the serving path.

Assumptions

  • 80 million monthly active members across 25 product tenants; a tenant is a product team.
  • 250,000 counting events per second steady state, 400,000 leaderboard reads per second.
  • Every figure in this set is a stated assumption unless tied to a named provider SLA.