Confluent Developer ft. Tim Berglund, Adi Polak & Viktor Gamov

Confluent Developer ft. Tim Berglund, Adi Polak & Viktor Gamov

Download on the App Store

Confluent Developer ft. Tim Berglund, Adi Polak & Viktor Gamov episodes

  • Tips For Writing Abstracts and Speaking at Conferences

    A well-written abstract is your ticket to conferences, but how do you write an excellent synopsis that will get accepted? As an experienced conference speaker, Robin Moffatt (Principal Developer Advocate, Confluent) often writes presentations that help the developer community to understand Apache Kafka® and its ecosystem. He is also the Program Committee Chair for Kafka Summit and Current 2022: The Next Generation of Kafka Summit. Having seen hundreds of conference submissions, Robin shares best practices for crafting abstracts that stand out, as well as tips for speaking at conferences. 

    So you want to answer the call for papers? Before writing your abstract, Robin and Kris recommend identifying a topic that you are enthusiastic about, or a topic that can be useful to others. Oftentimes, attendees go to conferences to learn about a given technology, which they may not have extensive knowledge of yet—so a fundamental topic is a good basis for a conference talk.  

    Once you’ve identified the topic you are interested in, there are key components to an effective write up:

    • Title: Come up with an enticing title that lets the conference organizers and audiences understand the content at a glance. There is a chance that a great topic could be rejected due to a poor title.
    • Abstract: Summarize the topic you plan to talk about in the proper format and length. Usually, a polished abstract has three short paragraphs consisting of approximately 200 words.

    It’s essential to spend quality time writing and refining your abstract, while keeping two audience groups in mind—the program committee and the conference attendees. Robin shares that when reviewing submissions, the program committees have a few standards in mind, such as if the topic fits into the overall conference theme, and whether attendees would be interested in the talk. Then if the abstract is accepted, the attendees themselves will decide if they’ll attend a particular session based on the agenda and the brief. 

    Robin and Kris also discuss why you should submit to a conference in the first place and also give tips for preparing your talk once you are accepted. If you are a new speaker or just someone interested in getting feedback on your abstract, Robin and the conference committees for Current 2022: The Next Generation of Kafka Summit will be hosting office hours to provide feedback.

    EPISODE LINKS

    • Current 2022: How to Become a Speaker
    • How to Win at the Conference Abstract Submission Game
    • Collection: How to Write a Good Conference Abstract
    • Preparing a New Talk
    • So How Do you Make Those Cool Diagrams?
    • Syntax Highlighting Code For Presentation Slides 
    • Watch Video Version
    • Twitter: Robin Moffatt | Kris Jenkins
    • Join the Confluent Community
    • Use PODCAST100 to get $100 of Confluent Cloud usage (details)

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    49 min
  • How I Became a Developer Advocate

    What is a developer advocate and how do you become one? In this episode, we have seasoned developer advocates, Kris Jenkins (Senior Developer Advocate, Confluent) and Danica Fine (Senior Developer Advocate, Confluent) answer the question by diving into how they got into the world of developer relations, what they enjoyed the most about their roles, and how you can become one.

    Developer advocacy is at the heart of a developer community—helping developers and software engineers to get the most out of a given technology by providing support in form of blog posts, podcasts, conference talks, video tutorials, meetups, and other mediums.   

    Before stepping into the world of developer relations, both Danica and Kris were hands-on developers. While dedicating professional time, Kris also devoted personal time to supporting fellow developers, such as running local meetups, writing blogs, and organizing hackathons.

    While Danica found her calling after learning more about Apache Kafka® and successfully implemented a mission-critical application for a financial services company—transforming 2,000 lines of codes into Kafka Streams. She enjoys building and sharing her knowledge with the community to make technology as accessible and as fun as possible.

    Additionally, the duo previews their developer advocacy trip to Singapore and Australia in mid-June, where they will attend local conferences and host in-person meetups on Kafka and event streaming. 

    EPISODE LINKS

    • In-person meetup: Singapore | Sydney | Melbourne
    • Coding in Motion: Building a Data Streaming App with JavaScript 
    • Practical Data Pipeline: Build a Plant Monitoring System with ksqlDB
    • How to Build a Strong Developer Community ft. Robin Moffatt and Ale Murray
    • Designing Event-Driven Systems
    • Watch the video version of this podcast
    • Danica Fine’s Twitter
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more with Kafka tutorials, resources, and guides at Confluent Developer
    • Use PODCAST100 to get an additional $100 of free Confluent Cloud usage (details)   

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    30 min
  • Data Mesh Architecture: A Modern Distributed Data Model

    Data mesh isn’t software you can download and install, so how do you build a data mesh? In this episode, Adam Bellemare (Staff Technologist, Office of the CTO, Confluent) discusses his data mesh proof of concept and how it can help you conceptualize the ways in which implementing a data mesh could benefit your organization.

    Adam begins by noting that while data mesh is a type of modern data architecture, it is only partially a technical issue. For instance, it encompasses the best way to enable various data sets to be stored and made accessible to other teams in a distributed organization. Equally, it’s also a social issue—getting the various teams in an organization to commit to publishing high-quality versions of their data and making them widely available to everyone else. Adam explains that the four data mesh concepts themselves provide the language needed to start discussing the necessary social transitions that must take place within a company to bring about a better, more effective, and efficient data strategy.

    The data mesh proof of concept created by Adam's team showcases the possibilities of an event-stream based data mesh in a fully functional model. He explains that there is no widely accepted way to do data mesh, so it's necessarily opinionated. The proof of concept demonstrates what self-service data discovery looks like—you can see schemas, data owners, SLAs, and data quality for each data product. You can also model an app consuming data products, as well as publish your own data products.

    In addition to discussing data mesh concepts and the proof of concept, Adam also shares some experiences with organizational data he had as a staff data platform engineer at Shopify. His primary focus was getting their main ecommerce data into Apache Kafka® topics from sharded MySQL—using Kafka Connect and Debezium. He describes how he really came to appreciate the flexibility of having access to important business data within Kafka topics. This allowed people to experiment with new data combinations, letting them come up with new products, novel solutions, and different ways of looking at problems. Such data sharing and experimentation certainly lie at the heart of data mesh.

    Adam has been working in the data space for over a decade, with experience in big-data architecture, event-driven microservices, and streaming data platforms. He’s also the author of the book “Building Event-Driven Microservices.”

    EPISODE LINKS

    • The Definitive Guide to Building a Data Mesh with Event Streams
    • What is data mesh? 
    • Saxo Bank’s Best Practices for Distributed Domain-Driven Architecture Founded on the Data Mesh
    • Watch the video version of this podcast
    • Kris Jenkins’ Twitter
    • Join the Confluent Community
    • Learn more with Kafka tutorials at Confluent Developer
    • Live demo: Intro to Event-Driven Microservices with Confluent
    • Use PODCAST100 to get an additional $100 of Confluent Cloud usage (details)

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    49 min
  • Flink vs Kafka Streams/ksqlDB: Comparing Stream Processing Tools

    Stream processing can be hard or easy depending on the approach you take, and the tools you choose. This sentiment is at the heart of the discussion with Matthias J. Sax (Apache Kafka® PMC member; Software Engineer, ksqlDB and Kafka Streams, Confluent) and Jeff Bean (Sr. Technical Marketing Manager, Confluent). With immense collective experience in Kafka, ksqlDB, Kafka Streams, and Apache Flink®, they delve into the types of stream processing operations and explain the different ways of solving for their respective issues.

    The best stream processing tools they consider are Flink along with the options from the Kafka ecosystem: Java-based Kafka Streams and its SQL-wrapped variant—ksqlDB. Flink and ksqlDB tend to be used by divergent types of teams, since they differ in terms of both design and philosophy.

    Why Use Apache Flink?

    The teams using Flink are often highly specialized, with deep expertise, and with an absolute focus on stream processing. They tend to be responsible for unusually large, industry-outlying amounts of both state and scale, and they usually require complex aggregations. Flink can excel in these use cases, which potentially makes the difficulty of its learning curve and implementation worthwhile.

    Why use ksqlDB/Kafka Streams?

    Conversely, teams employing ksqlDB/Kafka Streams require less expertise to get started and also less expertise and time to manage their solutions. Jeff notes that the skills of a developer may not even be needed in some cases—those of a data analyst may suffice. ksqlDB and Kafka Streams seamlessly integrate with Kafka itself, as well as with external systems through the use of Kafka Connect. In addition to being easy to adopt, ksqlDB is also deployed on production stream processing applications requiring large scale and state.

    There are also other considerations beyond the strictly architectural. Local support availability, the administrative overhead of using a library versus a separate framework, and the availability of stream processing as a fully managed service all matter. 

    Choosing a stream processing tool is a fraught decision partially because switching between them isn't trivial: the frameworks are different, the APIs are different, and the interfaces are different. In addition to the high-level discussion, Jeff and Matthias also share lots of details you can use to understand the options, covering employment models, transactions, batching, and parallelism, as well as a few interesting tangential topics along the way such as the tyranny of state and the Turing completeness of SQL.

    EPISODE LINKS

    • The Future of SQL: Databases Meet Stream Processing
    • Building Real-Time Event Streams in the Cloud, On Premises
    • Kafka Streams 101 course
    • ksqlDB 101 course
    • Watch the video version of this podcast
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more on Confluent Developer
    • Use PODCAST100 for additional $100 of  Confluent Cloud usage (details)

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    56 min
  • Practical Data Pipeline: Build a Plant Monitoring System with ksqlDB

    Apache Kafka® isn’t just for day jobs according to Danica Fine (Senior Developer Advocate, Confluent). It can be used to make life easier at home, too!

    Building out a practical Apache Kafka® data pipeline is not always complicated—it can be simple and fun. For Danica, the idea of building a Kafka-based data pipeline sprouted with the need to monitor the water level of her plants at home. In this episode, she explains the architecture of her hardware-oriented project and discusses how she integrates, processes, and enriches data using ksqlDB and Kafka Connect, a Raspberry Pi running Confluent's Python client, and a Telegram bot. Apart from the script on the Raspberry Pi, the entire project was coded within Confluent Cloud.

    Danica's model Kafka pipeline begins with moisture sensors in her plants streaming data that is requested by an endless for-loop in a Python script on her Raspberry Pi. The Pi in turn connects to Kafka on Confluent Cloud, where the plant data is sent serialized as Avro. She carefully modeled her data, sending an ID along with a timestamp, a temperature reading, and a moisture reading. On Confluent Cloud, Danica enriches the streaming plant data, which enters as a ksqlDB stream, with metadata such as moisture threshold levels, which is stored in a ksqlDB table.

    She windows the streaming data into 12-hour segments in order to avoid constant alerts when a threshold has been crossed. Alerts are sent at the end of the 12-hour period if a threshold has been traversed for a consistent time period within it (one hour, for example). These are sent to the Telegram API using Confluent Cloud's HTTP Sink Connector, which pings her phone when a plant's moisture level is too low.

    Potential future project improvement plans include visualizations, adding another Telegram bot to register metadata for new plants, adding machine learning to anticipate watering needs, and potentially closing the loop by pushing data back

    to the Raspberry Pi, which could power a visual indicator on the plants themselves. 

    EPISODE LINKS

    • Apache Kafka at Home: A Houseplant Alerting System with ksqlDB
    • GitHub: raspberrypi-houseplants
    • Data Pipelines 101
    • Tips for Streaming Data Pipelines ft. Danica Fine
    • Motion in Motion: Building an End-to-End Motion Detection and Alerting System with Apache Kafka and ksqlDB
    • Watch the video version of this podcast
    • Danica Fine's Twitter
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more on Confluent Developer
    • Live demo: Intro to Event-Driven Microservices with Confluent
    • Use PODCAST100 to get an additional $100 of free Confluent Cloud usage (details)   

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    34 min
  • Apache Kafka 3.2 - New Features & Improvements

    Apache Kafka® 3.2 delivers new  KIPs in three different areas of the Kafka ecosystem: Kafka Core, Kafka Streams, and Kafka Connect. On behalf of the Kafka community, Danica Fine (Senior Developer Advocate, Confluent), shares release highlights.

    More than half of the KIPs in the new release concern Kafka Core. KIP-704 addresses unclean leader elections by allowing for further communication between the controller and the brokers. KIP-764 takes on the problem of a large number of client connections in a short period of time during preferred leader election by adding the configuration `socket.listen.backlog.size`. KIP-784 adds an error code field to the response of the `DescribeLogDirs` API, and KIP-788 improves network traffic by allowing you to set the pool size of network threads individually per listener on Kafka brokers. Finally, in accordance with the imminent KRaft protocol, KIP-801 introduces a built-in `StandardAuthorizer` that doesn't depend on ZooKeeper. 

    There are five KIPs related to Kafka Streams in the AK 3.2 release. KIP-708 brings rack-aware standby assignment by tag, which improves fault tolerance. 

    Then there are three projects related to Interactive Queries v2: KIP-796 specifies an improved interface for Interactive Queries; KIP-805 allows state to be queried over a specific range; and KIP-806 adds two implementations of the Query interface, `WindowKeyQuery` and `WindowRangeQuery`.

    The final Kafka Streams project, KIP-791, enhances `StateStoreContext` with `recordMetadata`,which may be accessed from state stores.

    Additionally, this Kafka release introduces Kafka Connect-related improvements, including KIP-769, which extends the `/connect-plugins` API, letting you list all available plugins, and not just connectors as before.  KIP-779 lets `SourceTasks` handle producer exceptions according to `error.tolerance`, rather than instantly killing the entire connector by default. Finally, KIP-808 lets you specify precisions with respect to TimestampConverter single message transforms. 

    Tune in to learn more about the Apache Kafka 3.2 release!

    EPISODE LINKS

    • Apache Kafka 3.2 release notes 
    • Read the blog to learn more
    • Download Apache Kafka 3.2.0
    • Watch the video version of this podcast

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    7 min
  • Scaling Apache Kafka Clusters on Confluent Cloud ft. Ajit Yagaty and Aashish Kohli

    How much can Apache Kafka® scale horizontally, and how can you automatically balance, or rebalance data to ensure optimal performance?

    You may require the flexibility to scale or shrink your Kafka clusters based on demand. With experience engineering cluster elasticity and capacity management features for cloud-native Kafka, Ajit Yagaty (Confluent Cloud Control Plane Engineering) and Aashish Kohli (Confluent Cloud Product Management) join Kris Jenkins in this episode to explain how the architecture of Confluent Cloud supports elasticity. 

    Kris suggests that optimal elasticity is like water from a faucet—you should be able to quickly obtain as many resources as you need, but at the same time you don't want the slightest amount to go wasted. But how do you specify the amount of capacity by which to adjust, and how do you know when it's necessary?

    Aashish begins by explaining how elasticity on Confluent Cloud has come a long way since the early days of scaling via support tickets. It's now self-serve and can be accomplished by dialing up or down a desired number of CKUs, or Confluent Units of Kafka. A CKU corresponds to a specific amount of Kafka resources and has been made to be consistent across all three major clouds. You can specify the number of CKUs you need via API, CLI or Confluent Cloud UI. 

    Ajit explains in detail how, once your request has been made, cluster resizing is a two-step process. First, capacity is added, and then your data is rebalanced. Rebalancing data on the cluster is critical to ensuring that optimal performance is derived from the available capacity. The amount of time it takes to resize a Kafka cluster depends on the number of CKUs being added or removed, as well as the amount of data to be rebalanced. 

    Of course, to request more or fewer CKUs in the first place, you have to know when it's necessary for your Kafka cluster(s). This can be challenging as clusters emit a large variety of metrics. Fortunately, there is a single composite metric that you can monitor to help you decide, as Ajit imparts on the episode.  

    Other topics covered by the trio include an in-depth explanation of how Confluent Cloud achieves elasticity under the hood (separate control and data planes, along with some Kafka dogfooding), future plans for autoscaling elasticity, scenarios where elasticity is critical, and much more.

    EPISODE LINKS

    • How to Elastically Scale Apache Kafka Clusters on Confluent Cloud
    • Shrink a Dedicated Kafka Cluster in Confluent Cloud
    • Elastic Apache Kafka Clusters in Confluent Cloud
    • Watch the video version of this podcast
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more with Kafka tutorials, resources, and guides at Confluent Developer
    • Live demo: Intro to Event-Driven Microservices with Confluent
    • Use PODCAST100 to get an additional $100 of free Confluent Cloud usage (details)   

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    50 min
  • Streaming Analytics on 50M Events Per Day with Confluent Cloud at Picnic

    What are useful practices for migrating a system to Apache Kafka® and Confluent Cloud, and why use Confluent to modernize your architecture?

    Dima Kalashnikov (Technical Lead, Picnic Technologies) is part of a small analytics platform team at Picnic, an online-only, European grocery store that processes around 45 million customer events and five million internal events daily. An underlying goal at Picnic is to try and make decisions as data-driven as possible, so Dima's team collects events on all aspects of the company—from new stock arriving at the warehouse, to customer behavior on their websites, to statistics related to delivery trucks. Data is sent to internal systems and to a data warehouse.

    Picnic recently migrated from their existing solution to Confluent Cloud for several reasons:

    • Ecosystem and community: Picnic liked the tooling present in the Kafka ecosystem. Since being a small team means they aren't able to devote extra time to building boilerplate-type code such as connectors for their data sources or functionality for extensive monitoring capabilities. Picnic also has analysts that use SQL so appreciated the processing capabilities of ksqlDB. Finally, they found that help isn't hard to locate if one gets stuck.
    • Monitoring: They wanted better monitoring; specifically they found it challenging to measure for SLAs with their former system as they couldn't easily detect the positions of consumers in their streams.
    • Scaling and data retention times: Picnic is growing so they needed to scale horizontally without having to worry about manual reassignment. They also hit a wall with their previous streaming solution with respect to the length of time they could save data, which is a serious issue for a company that makes data-first decisions. 
    • Cloud: Another factor of being a small team is that they don't have resources for extensive maintenance of their tooling.

    Dima's team was extremely careful and took their time with the migration. They ran a pilot system simultaneously with the old system, in order to make sure it could achieve their fundamental performance goals: complete stability, zero data loss, and no performance degradation. They also wanted to check it for costs.

    The pilot was successful and they actually have a second, IoT pilot in the works that uses Confluent Cloud and Debezium to track the robotics data emanating from their automatic fulfillment center. And it's a lot of data, Dima mentions that the robots in the center generate data sets as large as their customer events streams. 

    EPISODE LINKS

    • Picnic Analytics Platform: Migration from AWS Kinesis to Confluent Cloud
    • Picnic Modernizes Data Architecture with Confluent
    • Data Engineer: Event Streaming Platform
    • Watch this podcast in video
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more with Kafka  resources on Confluent Developer
    • Live demo: Event-Driven Microservices with Confluent
    • Use PODCAST100 to get $100 of free Confluent Cloud usage
    • Building Data Streaming App | Coding In Motion

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    35 min
  • Build a Data Streaming App with Apache Kafka and JS - Coding in Motion

    Coding is inherently enjoyable and experimental. With the goal of bringing fun into programming, Kris Jenkins (Senior Developer Advocate, Confluent) hosts a new series of hands-on workshops—Coding in Motion, to teach you how to use Apache Kafka® and data streaming technologies for real-life use cases. 

    In the first episode, Sound & Vision, Kris walks you through the end-to-end process of building a real-time, full-stack data streaming application from scratch using Kafka and JavaScript/TypeScript. 

    During the workshop, you’ll learn to stream musical MIDI data into fully-managed Kafka using Confluent Cloud, then process and transform the raw data stream using ksqlDB. Finally, the enriched data streams will be pushed to a web server to display data in a 3D graphical visualization. 

    Listen to Kris previews the first episode of Coding in Motion: Sound & Vision and join him in the workshop premiere to learn more. 

    EPISODE LINKS

    • Coding in Motion Workshop: Build a Streaming App for Sound & Vision
    • Watch the video version of this podcast
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more with Kafka tutorials, resources, and guides at Confluent Developer
    • Live demo: Intro to Event-Driven Microservices with Confluent
    • Use PODCAST100 to get an additional $100 of free Confluent Cloud usage (details)   

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    3 min
  • Optimizing Apache Kafka's Internals with Its Co-Creator Jun Rao

    You already know Apache Kafka® is a distributed event streaming system for setting your data in motion, but how does its internal architecture work? No one can explain Kafka’s internal architecture better than Jun Rao, one of its original creators and Co-Founder of Confluent. Jun has an in-depth understanding of Kafka that few others can claim—and he shares that with us in this episode, and in his new Kafka Internals course on Confluent Developer. 

    One of Jun's goals in publishing the Kafka Internals course was to cover the evolution of Kafka since its initial launch. In line with that goal, he discusses the history of Kafka development, including the original thinking behind some of its design decisions, as well as how its features have been improved to better meet its key goals of durability, scalability, and real-time data. 

    With respect to its initial design, Jun relates how Kafka was conceived from the ground up as a distributed system, with compute and storage always maintained as separate entities, so that they could scale independently. Additionally, he shares that Kafka was deliberately made for high throughput since many of the popular messaging systems at the time of its invention were single node, but his team needed to process large volumes of non-transactional data, such as application metrics, various logs, click streams, and IoT information.

    As regards the evolution of its features, in addition to others, Jun explains these two topics at great length:

    • Consumer rebalancing protocol: The original "stop the world" approach to Kafka's consumer rebalancing—although revolutionary at the time of its launch, was eventually improved upon to take a more incremental approach.
    • Cluster metadata: Moving from the external ZooKeeper to the built-in KRaft protocol allows for better scaling by a factor of ten. according to Jun, and it also means you only need to worry about running a single binary.

    The Kafka Internals course consists of eleven concise modules, each dense with detail—covering Kafka fundamentals in technical depth. The course also pairs with four hands-on exercise modules led by Senior Developer Advocate Danica Fine. 

    EPISODE LINKS

    • Kafka Internals course
    • How Apache Kafka Works: An Introduction to Kafka’s Internals
    • Coding in Motion Workshop: Build a Streaming App
    • Watch the video version of this podcast
    • Kris Jenkins’ Twitter
    • Streaming Audio Playlist 
    • Join the Confluent Community
    • Learn more with Kafka tutorials, resources, and guides at Confluent Developer
    • Live demo: Intro to Event-Driven Microservices with Confluent
    • Use PODCAST100 to get an additional $100 of free Confluent Cloud usage (details)   

    SEASON 2
    Hosted by Tim Berglund, Adi Polak and Viktor Gamov
    Produced and Edited by Noelle Gallagher, Peter Furia and Nurie Mohamed
    Music by Coastal Kites 
    Artwork by Phil Vo 

    •  🎧 Subscribe to Confluent Developer wherever you listen to podcasts. 
    • ▶️ Subscribe on YouTube, and hit the 🔔 to catch new episodes.
    • 👍 If you enjoyed this, please leave us a rating. 
    • 🎧 Confluent also has a podcast for tech leaders: "Life Is But A Stream" hosted by our friend, Joseph Morais.
    49 min

About Confluent Developer ft. Tim Berglund, Adi Polak & Viktor Gamov

From the publisher's feed

Hi, we’re Tim Berglund, Adi Polak, and Viktor Gamov and we’re excited to bring you the Confluent Developer podcast (formerly “Streaming Audio.”) Our hand-crafted weekly episodes feature in-depth…

More shows like Confluent Developer ft. Tim Berglund, Adi Polak & Viktor Gamov

Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

Software Engineering Radio - the podcast for professional software developers

273 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

286 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

623 Listeners

Data Engineering Podcast by Tobias Macey

Data Engineering Podcast

144 Listeners

The Daily by The New York Times

The Daily

111,766 Listeners