All talks

Kafka, Demystified: How Your Swiggy Order Reaches Everyone Who Needs It

Apache Kafka Meetup Hyderabad40 min talk, live demo and Q&A

  • Kafka
  • Kafka Connect
  • Schema Registry
  • Kafka Streams
  • CDC
Ashfaq presenting a slide titled "Kafka: where every order lives", showing three brokers replicating partitions, to a seated audience

One food order has to reach the restaurant, a delivery partner, payments and your notifications. This talk follows that single order through Kafka, Kafka Connect, Schema Registry, Kafka Streams and Confluent Cloud, so they read as one connected system instead of five tools, and builds the pipeline live.

The Swiggy order is a teaching example, not a description of Swiggy's real internal systems.

What I covered

I built the whole talk around one Swiggy order, from tapping “Place order” to the restaurant, rider and notifications all knowing about it. A single map of the pipeline came back on screen as each topic started, with that part highlighted, so the room always knew where we were. Every piece opened with the naive way of doing it and what breaks, before showing how Kafka solves it.

  • Kafka core: why Kafka exists, and how it differs from a regular message queue.
  • Kafka Connect: how data moves in and out of Kafka without integration code.
  • Schema Registry: how it stops a small data change from quietly breaking other teams.
  • Kafka Streams: computing live results straight from the stream of events.
  • Confluent Cloud: running the same pipeline without managing servers.

Live demo

  1. Insert an order into Postgres; a Debezium source connector picks it up.
  2. The order lands on the order-events topic within seconds, its shape checked by Schema Registry.
  3. A Kafka Streams app updates that customer’s running total live.

The demo ran on a local stack, so there’s no public repository.

Gotchas I shared

  • Size the partition count for peak load up front. Changing it later moves keys and breaks the ordering you relied on.
  • Add new fields as optional. Don’t rename or remove fields without coordinating with every reader.
  • Always configure a dead-letter topic on Connect, so one bad record can’t stop the pipeline.
  • If you alert on one thing, make it consumer lag.

How it landed

People said following one order made the concepts easy to grasp, and the live demo made the pieces click.

More talks

Ashfaq at a lectern beside a screen showing a resources slide, speaking to a room of seated attendees

AWS User Group Hyderabad

From Kafka to S3: Streaming Data Pipelines with Kafka Connect

How do you get streaming data from Kafka into Amazon S3 without writing and babysitting custom consumer code? Kafka basics, what Kafka Connect is and why it exists, then a deep dive into the S3 Sink connector from someone who works on it, ending with a pipeline built live.

  • Kafka
  • Kafka Connect
  • S3 Sink
  • AWS

Companion post