More Goto tech episodes

Kafka for Architects  Ekaterina Gorshkova & Viktor Gamov thumbnail

Kafka for Architects Ekaterina Gorshkova & Viktor Gamov

Published 19 May 2026

Duration: 00:28:48

Kafka's journey from 2015 to its current role in event-driven architectures highlights its use in replacing legacy systems, challenges in schema compatibility and collaboration, diverse applications from data transfer to AI orchestration, and the need for strong event design and community knowledge sharing alongside comparisons to alternatives like Flink.

Episode Description

This interview was recorded for the GOTO Book Club. http://gotopia.tech/bookclub Ekaterina Gorshkova - Apache Kafka Engineer at SOFTEC & Author of "Ka...

Overview

The podcast explores Kafka's evolution from 2015 to the present, emphasizing its enduring role in data pipelines and event-driven architectures. It highlights real-world applications, including both successful and failed implementations, with common use cases centered on data transfer between systems and messaging backbones, while niche applications span prototyping areas like event sourcing and real-time analytics. Challenges in Kafka adoption include organizational hurdles such as ensuring schema compatibility and cross-team alignment, as well as technical misconceptions around distributed transactions and the shift from traditional messaging models. The discussion also addresses the importance of robust data contracts and schema registries to manage compatibility and versioning, alongside strategic planning for governance and long-term maintenance.

The episode further examines Kafka's relevance in the AI and agentic systems era, framing it as a foundational "data bus" for orchestrating complex workflows involving AI models and external APIs. It contrasts Kafka Streams with emerging alternatives like Apache Flink, which is gaining traction for stateful processing tasks such as recommendation engines. The podcast underscores the need for educational efforts to transition teams from transactional to event-driven paradigms, while acknowledging Kafkas limitationssuch as its unsuitability for request-response patterns or batch processingand its anti-patterns. Community engagement and shared knowledge are stressed as critical factors in shaping technology adoption, with comparisons drawn to the maturity of Pulsars community. The discussion closes with reflections on the value of technical education and collaboration in navigating the evolving landscape of software development and integration.

What If

  • What if you start a Kafka-based real-time data pipeline for your next project?

    • Concrete move: Implement a Kafka Streams application to process and route event data between microservices or external systems.
    • Why now: The text highlights Kafkas dominance in data pipelines and its ability to replace legacy tools like ETL. Starting now leverages its simplicity and speed, which are critical for solo developers needing to ship features quickly.
    • Expected upside: Reduced latency in data processing, easier scalability, and alignment with modern event-driven architectures that are in high demand.
  • What if you design a strict data contract and schema registry for your Kafka events?

    • Concrete move: Use Kafkas schema registry (e.g., Confluent Schema Registry) to enforce versioning and compatibility rules for all event schemas.
    • Why now: The text emphasizes the challenges of schema misalignment and non-technical stakeholder confusion. Proactively defining contracts now avoids costly rework later and ensures team alignment.
    • Expected upside: Fewer production errors from schema drift, smoother onboarding for new team members, and stronger governance for long-term maintenance.
  • What if you start a podcast or blog to share your Kafka implementation journey?

    • Concrete move: Record a series of short episodes or write articles detailing your Kafka projects successes, failures, and lessons learned.
    • Why now: The text underscores the value of community engagement and knowledge sharing, especially as Kafka adoption grows. Sharing your experience now positions you as a thought leader and attracts collaborators or clients.
    • Expected upside: Increased visibility in the developer community, potential consulting opportunities, and a repository of practical insights to accelerate future projects.

Takeaway

  • Evaluate Kafka for data transfer needs: Assess whether your project requires Kafka as a messaging backbone for real-time data transfer between systems, as its a common and effective use case highlighted in the discussion.
  • Implement schema registries for event compatibility: Use tools like Kafkas schema registry to enforce strict schema rules, ensuring backward/forward compatibility and avoiding issues with data contract changes.
  • Invest in event-driven principles training: Dedicate time to learning event-driven architecture and distributed systems concepts, as these are critical for successful Kafka adoption and avoiding technical misconceptions.
  • Explore Flink for complex stateful processing: Consider Apache Flink as an alternative to Kafka Streams for large-scale, stateful tasks like real-time analytics or recommendation engines, especially where SQL-like transformations are needed.
  • Engage with technical communities for knowledge sharing: Actively participate in Kafka or related communities (e.g., forums, podcasts) to gain insights, share experiences, and stay updated on best practices and anti-patterns.

Recent Episodes of Goto tech

19 Jun 2026 Continuous Delivery in a World of Constant Change Abby Bangser & Dave Farley

Continuous delivery principles, AI's challenges in code generation, and the necessity of incrementalism, rigorous testing, and human validation in software development are emphasized, alongside critiques of AI's lack of precision and the push for structured validation in high-stakes systems.

16 Jun 2026 Go for Java Programmers Barry Feigenbaum & Shon Saliga

Go emphasizes simplicity, concurrency, and efficiency for lightweight applications through explicit error handling and goroutines, while Java offers a feature-rich, object-oriented framework with extensive libraries and inheritance for complex, general-purpose systems, each suited to distinct development priorities and domains.

12 Jun 2026 Engineering Leadership in Turbulent Times Sarah Wells, Pat Kua & Daniel Terhorst-North

The text contrasts technical leadership and management, highlighting leadership's emphasis on vision and team alignment with management's focus on systems and accountability, while exploring change strategies, frameworks like the "Three Threes Model," challenges in technical debt and cross-functional alignment, and the role of communication, culture, and adaptability in fostering innovation.

9 Jun 2026 Modern Concurrency in Java Bazlur Rahman & Michael Redlich

Modern Java concurrency explores the shift from traditional threads to virtual threads (JDK 21) and structured concurrency, emphasizing scalability for I/O-bound tasks, task management simplification, limitations in CPU-bound work, comparisons with reactive programming, adoption challenges, and the book's unification of knowledge around Project Loom and scoped values for intermediate developers.

5 Jun 2026 Roc & Zig: A Compiler Rewrite Story Anjana Vakil & Richard Feldman

The text covers Rock's evolution as a simplified, statically typed alternative to Elm with a Zig-based compiler, AI's expanding role in software development beyond automation, open-source challenges, education's shift toward conceptual understanding, and the tension between rapid AI-driven productivity and quality-focused project development.

More Goto tech episodes