Glossary (terms mentioned in our conversation)

ADR (Architecture Decision Record)

A short document that records a single technical/architectural decision: the context, what was decided, why, alternatives, risks, and how/when it will be revisited. Used to prevent re-litigating decisions and to preserve reasoning over time.

DRI (Directly Responsible Individual)

One explicitly named person accountable for an outcome (a decision, project, rollout, incident follow-up, etc.). The goal is to eliminate ambiguity and ensure decisions have clear ownership.

CSAT (Customer Satisfaction)

A customer satisfaction metric, typically collected via a survey (often 1–5 stars or 1–10). Reported as an average score or as the percent of respondents who rate satisfaction above a threshold (e.g., “% satisfied”).

NPS (Net Promoter Score)

A customer sentiment metric based on: “How likely are you to recommend this product?” (0–10 scale). Respondents are categorized as Promoters (9–10), Passives (7–8), and Detractors (0–6). Computed as:

$$ NPS = %Promoters - %Detractors $$

SLI (Service Level Indicator)

A measurable metric that reflects service performance/reliability (e.g., availability, p95 latency, error rate). SLIs are what you measure.

SLO (Service Level Objective)

A target for an SLI over a time window (e.g., “99.9% successful requests over 30 days,” “p95 latency < 200ms”). SLOs define what “good enough reliability” means internally.

SLA (Service Level Agreement)

A customer-facing contractual commitment, often tied to penalties/credits if not met. SLAs are frequently derived from SLOs but are typically less strict and legally framed.

MTTR (Mean Time To Recovery/Restore)

The average time to restore service after an incident causes degradation or outage. Often calculated as total time in degraded state divided by number of incidents over a period.

“Review apps” (Merge Request / Pull Request review environments)

Ephemeral environments created per MR/PR so reviewers can see and test changes without pulling code locally. Typically deployed via Kubernetes/CI and destroyed after merge.

WebSocket

A persistent, bidirectional network connection between client and server, commonly used for real-time updates (e.g., GraphQL subscriptions).

GraphQL

An API query language and runtime where clients request exactly the data they need, typically via a typed schema. Often used to reduce over/under-fetching and improve frontend-backend contract clarity.

GraphQL Subscription

A GraphQL operation type for pushing real-time updates from server to client, commonly implemented over WebSockets. Often used for live dashboards and event-driven UIs.

Apollo (Apollo Client)

A popular GraphQL client for frontend applications (especially TypeScript/React) that supports caching, typed operations, and subscriptions.

Redux

A predictable state container commonly used in React applications to manage global/shared state. Useful for cross-cutting state, but can add complexity if overused for local/derived state.

TypeScript type generation (Generated TS types)

Automatically generated TypeScript types from an API schema (often GraphQL) to ensure compile-time correctness and safer refactors.

Virtualization (List/Table virtualization)

A UI technique that renders only the visible portion of large lists/tables to keep scrolling smooth and reduce DOM/render cost (e.g., react-window, react-virtualized).

Infinite scroll

A UI pattern that loads additional content as the user scrolls (often combined with pagination and/or virtualization).

Observability

The ability to understand a system’s internal state from its outputs—usually via logs, metrics, and traces—to support debugging, reliability, and performance tuning.

“Drive-by critique” (informal term)

A criticism raised publicly (often without prior context, reproduction steps, or direct communication), which can derail discussions and create status/attribution issues.

Decision DRI vs Implementation Owner (distinction we discussed)

  • Decision DRI: accountable for the choice and its outcomes/tradeoffs.
  • Implementation owner: responsible for building it. Sometimes the same person, but separating them prevents authority-without-accountability dynamics.

If you want, I can format this glossary as a one-page internal doc you can paste into Confluence/Notion/GitHub (and tailor it to your team’s exact terminology).