Domain Context — Vocabulary
The terms practitioners use, with one-line definitions you can deploy in the interview. Skim this; come back to it when you hit a word you can't define quickly.
Rust runtime & type vocab
Send- A type that can be transferred across thread boundaries.
Arc<T>is Send if T is. Sync- A type safe to share by reference across threads.
&Tis Send iff T is Sync. 'static- Lifetime "lives for the duration of the program." Spawned tasks require captured values to be
'static. - Future
- A value that, when polled, eventually produces a result. Rust futures are lazy — nothing happens until polled.
- Pinning (
Pin<P>) - Guarantees that the pointed-to value won't be moved. Required for self-referential futures (the state machine generated by
async). - Typestate pattern
- Encoding state in types so invalid transitions are compile errors.
Builder<Unsealed>vsBuilder<Sealed>. - RAII
- Resource Acquisition Is Initialization — resources released in
Drop. Lock guards, file handles, span enters. - Zero-cost abstraction
- An abstraction that compiles to the same code you'd write by hand.
Iteratorchains,Result<T,E>. - Monomorphization
- Generic code specialized per concrete type at compile time. Why generics are fast and binaries are big.
Async & concurrency vocab
- Tokio runtime
- The dominant async executor for Rust. Multi-threaded work-stealing scheduler by default.
- Work stealing
- Idle worker threads steal tasks from busy threads' local queues to keep CPUs saturated.
- Cooperative scheduling
- Tasks yield at
.awaitpoints. A task that doesn't yield hogs its worker thread. - Backpressure
- Mechanism by which a slow consumer signals "slow down" to producers. Bounded channels are the basic tool.
- Structured concurrency
- Child tasks bound to parent scope; cancelling the parent cancels children. Achievable with
CancellationToken. - Cancellation safety
- Property of a future that says "you can cancel me mid-way without corrupting state." Documented per-API.
- Actor
- A task that owns state and processes messages from a channel. Common pattern to avoid shared-mutable state.
- spawn_blocking
- Move synchronous, CPU-bound work to a dedicated thread pool so it doesn't starve the async executor.
Networking & RPC vocab
- gRPC
- HTTP/2-based binary RPC framework using Protocol Buffers. Streaming, deadlines, status codes.
- tonic
- The standard Rust gRPC implementation. Built on hyper + tower.
- Protocol Buffers (protobuf)
- Binary serialization format with schema (.proto). Code-generated bindings.
- Streaming RPC
- gRPC modes: server-stream (one req, many resp), client-stream (many req, one resp), bidi (many both).
- SSE (Server-Sent Events)
- HTTP streaming pattern: server pushes text/event-stream frames over an open connection. How LLM token streams reach browsers.
- HTTP/2 multiplexing
- Multiple concurrent requests over one TCP connection. Standard for gRPC and modern HTTP.
- tower
- Rust middleware framework. Services are
Service<Req, Resp>; layers compose. - hyper
- Low-level HTTP/1+2 implementation. Underpins reqwest, axum, tonic.
- axum
- Ergonomic tower-based web framework on hyper.
- Deadline propagation
- gRPC concept: the upstream's remaining time budget flows through to downstream calls.
ML serving vocab
- vLLM
- High-throughput open-source LLM serving engine. PagedAttention, continuous batching. OpenAI-compatible HTTP API.
- Triton
- NVIDIA's inference server. Multi-framework (TensorRT, PyTorch, ONNX). HTTP/gRPC.
- TGI (Text Generation Inference)
- Hugging Face's LLM serving server. SSE streaming, batching.
- KV cache
- Per-request cache of attention keys/values from prior tokens. Avoids recomputation during decode. Memory-intensive.
- Prefix caching
- Reusing KV cache across requests that share a prefix (system prompt). Big throughput win.
- Continuous batching
- Inference server batches in-flight requests on each decode step, adding new ones each step. Maximizes GPU utilization.
- Prefill vs decode
- Prefill = process input prompt (parallel over tokens). Decode = generate output tokens one at a time. Different perf profiles.
- TTFT (Time to First Token)
- Latency from request to first emitted token. Dominated by queueing + prefill.
- ITL (Inter-Token Latency)
- Pause between consecutive tokens. Dominated by decode step.
- Speculative decoding
- Use a small draft model to predict multiple tokens, validated by the big model in one step. Latency win, no quality loss.
- Quantization
- Reducing model weight/activation precision (FP16 → INT8 → INT4). Less memory, faster, small quality cost.
Agent & orchestration vocab
- Tool use / function calling
- The model emits a structured "call this function with these args" instead of free text. The orchestrator runs the function and feeds the result back.
- ReAct (reason-act-observe)
- Agent loop: model produces thought + action; environment returns observation; loop.
- Plan-then-execute
- Agent emits a multi-step plan once; executor walks it. More predictable than ReAct.
- Agent state machine
- Explicit states (pending, running, awaiting_approval, complete, failed, cancelled) with allowed transitions.
- Tool router / dispatcher
- The service that maps a tool name to a handler, validates args, enforces auth, dispatches.
- Idempotency key
- Caller-generated unique ID per side-effecting call so retries don't duplicate side effects.
- Sub-agent
- An agent launched by another agent. Isolated state, bounded scope, trace-linked to the parent.
- Approval gate
- Pause point in agent execution waiting for human sign-off on a high-tier action.
- Hedging
- Fire a duplicate request to a second backend after a delay; take whichever returns first.
- Breakglass
- Audited emergency override of normal approval/policy gates.
Observability vocab
- OpenTelemetry (OTel)
- Vendor-neutral observability standard. Traces, metrics, logs. OTLP is the wire protocol.
- Span
- A single unit of work in a trace — start time, end time, attributes, parent.
- Trace ID
- Unique ID shared by all spans in one request's path. Propagated across services via headers.
- Trace context (W3C)
- Standard headers (
traceparent,tracestate) for cross-service trace propagation. - Tail-based sampling
- Decide which traces to keep after seeing their outcome (e.g., always keep errors).
- RED metrics
- Rate, Errors, Duration. The three you need per endpoint.
- USE metrics
- Utilization, Saturation, Errors. Per-resource (CPU, memory, queue).
- SLI / SLO / SLA
- Service Level Indicator (the metric) / Objective (the target) / Agreement (the contract with consequences).
- Error budget
- Quantified amount of SLO breach you can afford before freezing risky changes.
- Burn rate
- Rate at which the error budget is being consumed. Multi-window burn-rate alerts catch fast and slow degradations.
Distributed systems vocab
- CAP theorem
- In a partition, you choose Consistency or Availability. Most systems are AP with tunable consistency.
- Linearizability
- The strongest single-key consistency: every read sees a real-time-ordered prior write.
- Eventual consistency
- Replicas converge given no new writes. Reads may be stale.
- Quorum (R+W>N)
- Read and write quorum sizes sum > replication factor → guarantees overlap → consistent reads.
- Sharding
- Partition data across nodes by key. Consistent hashing is the standard scheme.
- Consistent hashing
- Hash key + node IDs onto a ring; key maps to the next clockwise node. Adding/removing nodes only remaps a fraction of keys.
- Optimistic concurrency control (OCC)
- Read-modify-write with a version check; retry on conflict. No locks held.
- Two-phase commit (2PC)
- Coordinator-based atomic commit across multiple resources. Blocks if coordinator fails — rarely used in modern systems.
- Saga
- Long-running transaction as a sequence of local transactions, each with a compensating action for rollback. Preferred over 2PC.
- Bulkhead
- Resource isolation pattern — separate pools/queues per workload so one failure doesn't drain everything.
- Cascading failure
- One service's slowness propagates upstream via queue buildup → upstream timeouts → upstream's upstream backs up.
- Thundering herd
- Many clients retry simultaneously after a transient failure, re-overwhelming the recovering service. Mitigation: jitter, retry budgets.