Design a Real-Time Logging System
Company: Booking
Role: Software Engineer
Category: System Design
Difficulty: medium
Interview Round: Onsite
Design a logging/telemetry system for a large application platform.
Requirements:
- Many services send log or metric events to the system
- Event submission from producers can be asynchronous
- Users must be able to read/query the data in real time for debugging, monitoring, or dashboards
Discuss:
- APIs and data model
- High-level architecture for ingestion, storage, and querying
- How to handle high write throughput
- How to make recently ingested data available for real-time reads
- Reliability, fault tolerance, and backpressure
- Partitioning, indexing, retention, and scaling trade-offs
Quick Answer: This question evaluates a candidate's competency in designing scalable, low-latency telemetry and logging systems, covering distributed systems architecture, ingestion pipelines, data modeling, real-time querying, reliability, backpressure, partitioning, indexing, retention, and operational trade-offs.