sysdesign-event-streaming-kafka

Evaluate Kafka suitability and produce a design note with topic, partition, consumer-group, and commit strategy.

Updated Apr 23, 2026
One-click install
npx skills add https://github.com/danilods/matilha-sysdesign-pack --skill sysdesign-event-streaming-kafka
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sysdesign-event-streaming-kafka
Source: https://github.com/danilods/matilha-sysdesign-pack/tree/main/skills/sysdesign-event-streaming-kafka
Command: npx skills add https://github.com/danilods/matilha-sysdesign-pack --skill sysdesign-event-streaming-kafka

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Kafka choice and topology guidance for event-driven architectures, helping teams decide when to use Kafka versus simpler queues and how to structure topics and consumer groups.

Core Features & Use Cases

  • Decision framework for replay, ordering, and multi-consumer needs.
  • Topic planning guidance (one topic per bounded context, key selection, partitioning, and retention considerations).
  • Governance guidance (observability, schema management, and DLQ integration for failure handling).

Quick Start

Outline a Kafka-based design plan for a new event-flow scenario.

Frequently Asked Questions about sysdesign-event-streaming-kafka

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decide if I need Kafka or a simpler queue for my event-driven architecture?

Choose Kafka over simpler queues when your event flow requires replay capabilities, strict per-key ordering, or multiple independent downstream consumers. If these requirements are absent, a simpler message broker is likely more appropriate.

How do I structure Kafka topics and consumer groups for a new event flow?

Structure Kafka topics by creating one topic per bounded context, selecting appropriate partition keys for strict per-key ordering, and mapping downstream consumers to distinct consumer groups. Tailor your commit strategy and retention policies to support these specific design needs.

What Kafka retention and schema strategies support future event backfills?

To support future backfills, configure Kafka retention policies to preserve historical event data and implement a strict schema management strategy. Documenting these governance policies ensures ongoing data compatibility and reliable replay capabilities.

When should I not use Kafka for event streaming?

You should not use Kafka for event streaming if your flow lacks replay requirements, strict per-key ordering needs, or multiple downstream consumers. In these cases, simpler queue systems provide adequate messaging without Kafka's operational overhead.

How do I handle failed messages in a Kafka event streaming topology?

Handle failed messages in a Kafka topology by integrating a Dead Letter Queue (DLQ) for failure handling. Combine this with comprehensive observability and schema governance to monitor, manage, and recover from downstream consumer errors.