System Design — Page 9 of 21
Browsing page 9 of 21 — 243 articles on system design.
Designing a Distributed Key-Value Store: Storage Engines, Replication, and Tunable Consistency
A ground-up walkthrough of distributed key-value store design: LSM trees vs B-trees, consistent hashing, Raft vs leaderless replication, quorum reads/writes, hinted handoff, anti-entropy, and hot key handling. Includes TypeScript abstractions and a consistency/availability/latency tradeoffs table.
Designing a Video Processing Pipeline: Upload, Transcoding, Adaptive Bitrate Streaming, and CDN Delivery at Scale
A deep dive into architecting a production video processing pipeline: resumable chunked uploads, transcoding job orchestration across quality presets, HLS and DASH segment generation, CDN cache warming, and the tradeoffs between latency-optimized and cost-optimized pipeline designs. Covers DRM, thumbnail generation, content fingerprinting, and multi-tenant isolation.
Designing a Web Crawler: URL Frontiers, Politeness Policies, and Distributed Crawling at Scale
A production-focused guide to web crawler system design covering URL frontier data structures, politeness policies, content deduplication, distributed coordination, and incremental re-crawling strategies with TypeScript examples.
Designing a Product Analytics System: Event Collection, Funnel Computation, and Retention Analysis at Scale
How to architect a product analytics platform that handles event ingestion from web and mobile clients, computes funnels and retention cohorts, and scales to millions of events per day. Covers event schema design, client-side batching, server-side fan-out, funnel query engines, and the tradeoffs between pre-aggregation and query-time computation.
Designing a Transactional Email System: Delivery Infrastructure, Template Rendering, and Deliverability Monitoring at Scale
How to architect transactional email for SaaS products at scale: provider selection and failover between SendGrid, Postmark, and AWS SES, MJML template rendering pipelines, delivery guarantees via queuing and retry, bounce and complaint handling, and reputation monitoring with TypeScript implementation patterns.
Event-Driven Architecture in Practice: When to Use It, When to Avoid It, and How to Get the Tradeoffs Right
A practical guide to event-driven architecture for senior engineers: what events actually are, the real benefits and costs, concrete decision criteria, common anti-patterns, and TypeScript implementation patterns with production considerations.
Designing a Content Moderation System: Automated Filtering, ML Classification, and Human Review Queues at Scale
How to architect a production content moderation pipeline for platforms with user-generated content. Covers pre-publication filters, ML classification models, confidence-based routing, human review queues, appeal workflows, and feedback loops that retrain models.
Designing a Multi-Agent System: Task Routing, Shared Memory, and Handoff Protocols for Production AI Applications
Single-agent architectures hit real limits in production: context windows fill up, tool sets sprawl, and latency compounds. This guide covers agent registry design, intent-based task routing, shared memory tiers, clean handoff protocols, error boundaries, and distributed tracing for multi-agent systems in TypeScript.
Designing a Webhook Delivery System: Retry Policies, Ordering Guarantees, and Subscriber Management at Scale
Building the provider side of webhooks is a distinct system design problem. This guide covers event fan-out, retry with exponential backoff and circuit breaking, HMAC-SHA256 payload signing, per-resource ordering, subscriber health scoring, observability, and partitioned delivery queues.
Designing a Usage-Based Billing System: Metering, Aggregation, and Invoice Generation for SaaS Products
How to design the metering, aggregation, and billing pipeline for SaaS products that charge by usage. Covers event ingestion, real-time vs batch aggregation tradeoffs, pricing model implementation in TypeScript, Stripe Billing integration patterns, and edge cases like credit grants, proration, and billing disputes.
Domain-Driven Design in Practice: Bounded Contexts, Aggregates, and Context Mapping for Production TypeScript Applications
A practical guide to applying DDD in real startup codebases. Covers strategic patterns (bounded contexts, context mapping, anti-corruption layers) and tactical patterns (aggregates, value objects, domain events) with TypeScript implementations, including when DDD is worth the investment and how it fits into modular monolith and event-driven architectures.
Event Schema Versioning in Practice: Evolution Strategies, Registry Patterns, and Breaking Change Management for Production Event Systems
How to evolve event schemas in production event-driven architectures without breaking consumers. Covers compatibility modes, schema registry patterns, TypeScript implementations with Zod, upcasting, dual-write migration, and CI/CD enforcement.