Chat Service Low-Level Design: Message Storage, Delivery Guarantees, and Read Receipts
7 min read Message Schema Every message is a structured record stored durably before any delivery is attempted: message_id: Snowflake ID — 64-bit […] Read article
7 min read Message Schema Every message is a structured record stored durably before any delivery is attempted: message_id: Snowflake ID — 64-bit […] Read article
6 min read Use Cases Vector search powers applications where semantic similarity matters more than keyword overlap: semantic search over documents, recommendation retrieval Read article
6 min read Pipeline Stages Overview An ML training pipeline moves data through a sequence of well-defined stages: data ingestion, feature engineering, model Read article
6 min read Double-Entry Bookkeeping Every financial transaction in the system uses double-entry bookkeeping: each transaction debits one or more accounts and credits Read article
6 min read Form Schema A form is defined as a document with ordered questions, each with a type and optional configuration: forms Read article
6 min read Event Schema The event is the core entity. It supports single and recurring events, multiple attendees, and rich metadata: events Read article
6 min read Contact Schema A contact represents a person or organization owned by a user. Multi-value fields (phones, emails, addresses) are stored Read article
6 min read Work Breakdown Structure The project hierarchy flows from top to bottom: Project → Epics → Stories → Tasks. Each node Read article
6 min read Query Cache Low-Level Design A query cache stores database query results in fast storage (typically Redis) so repeated identical queries Read article
6 min read Database Proxy Low-Level Design A database proxy sits in the network path between application servers and the database. It multiplexes Read article
5 min read Report Builder Low-Level Design A report builder lets non-engineers define, save, schedule, and share data reports without writing raw SQL. Read article
5 min read Data Import Service Low-Level Design A data import service ingests user-supplied files into the system's database. The main challenges are: Read article
5 min read Data Export Service Low-Level Design A data export service lets users extract large datasets in their preferred format. The core Read article
6 min read Continuous Profiler Low-Level Design A continuous profiler measures where a production service spends CPU time without requiring code changes or Read article
5 min read Error Tracking Service Low-Level Design An error tracking service answers two questions: “What broke?” and “Has it broken before?” It Read article