← Amazon Interview Insights

Amazon·Software Engineer·Technical Phone Screen·Intermediate

Intermediate
May 2026

Summary

Amazon SWE interview with an OOD round. Just the one design question but it took up the whole session, lots of back and forth on the details.

Questions Asked (1)

Q1

Design a publish-subscribe (pub-sub) system from an object-oriented perspective.

System DesignTechnical Trade-offs
Author's notes

Jumped straight into defining a Publisher and Subscriber interface, which felt right, but I fumbled when they pushed on how you'd handle multiple topics and fan-out.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements and scope, then design the core object model with key abstractions like Publisher, Subscriber, Topic, and Broker. Discuss trade-offs in delivery semantics, scalability, and reliability, and iterate based on feedback.

Pro tip: Demonstrate Amazon leadership principles by proactively discussing operational excellence, such as monitoring, metrics, and failure handling, and tie design decisions to customer impact.

1. Clarify Requirements

Ask questions to understand functional and non-functional requirements, such as message ordering, delivery guarantees, scalability, and latency.

2. Define Core Abstractions

Identify key objects and interfaces: Publisher, Subscriber, Topic, Broker, Message, and Subscription. Define their responsibilities and relationships.

3. Design Interactions and Patterns

Specify how components interact using design patterns (e.g., Observer, Mediator) and handle message flow, including publish, subscribe, and notify operations.

4. Address Trade-offs and Scalability

Discuss trade-offs in delivery semantics (at-least-once vs. exactly-once), ordering, partitioning, and how to scale the broker horizontally.

5. Discuss Reliability and Operations

Cover fault tolerance, message persistence, monitoring, and how to handle failures and backpressure.

Key Points to Mention

  • Delivery semantics: at-most-once, at-least-once, exactly-once and their implications
  • Scalability: partitioning topics, load balancing, and horizontal scaling of brokers
  • Reliability: message persistence, replication, and fault tolerance
  • Decoupling: how pub-sub enables loose coupling between publishers and subscribers
  • Design patterns: Observer, Mediator, and their applicability
  • Operational concerns: monitoring, metrics, logging, and alerting

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.