Abstractions in System Design

Abstractions in System Design - Building Modular Systems

Understanding abstractions in system design covering abstraction layers, APIs, interfaces, and how they help manage complexity in distributed systems.

October 27, 2022 · 3 min · 593 words · Eakan Gopalakrishnan
System Design Fundamentals

What is System Design? Understanding the Fundamentals

Introduction to system design fundamentals covering core concepts, design principles, thinking patterns, and the philosophy behind building large-scale systems.

October 26, 2022 · 2 min · 284 words · Eakan Gopalakrishnan
Transactional Outbox Pattern Architecture Diagram

Transactional Outbox Pattern: A Practical Guide to Trade-offs

In event-driven systems, services often need to update local state and publish an event for other services. Doing these as separate operations introduces a consistency risk known as the Dual Write Problem. The core requirement is simple: the database write and event publication should represent one logical change. If one succeeds and the other fails, downstream systems may observe incomplete state. The Transactional Outbox Pattern is a practical way to address this in many microservice architectures. ...

September 8, 2025 · 4 min · 794 words · eakangk