Kafka Application Development Training
Build production-grade Kafka applications with this intensive 3-day training. Learn advanced producer and consumer patterns, Schema Registry integration, Kafka Streams for stateful processing, error handling strategies, and comprehensive testing approaches.
Training Details
Section titled “Training Details”| Duration | 3 days (24 hours) |
| Level | Intermediate |
| Delivery | In-person, Live online, Hybrid |
| Certification | N/A |
Who Is This For?
Section titled “Who Is This For?”- Backend developers building event-driven microservices
- Data engineers developing streaming data pipelines
- Software architects designing event-driven systems
- Anyone with basic Kafka experience seeking production skills
Learning Outcomes
Section titled “Learning Outcomes”After completing this training, you’ll be able to:
- Implement advanced producer patterns with transactions
- Build resilient consumers with error handling and retry logic
- Use Schema Registry for data contracts and schema evolution
- Develop stream processing applications with Kafka Streams
- Write comprehensive tests for Kafka applications
- Apply event-driven design patterns (CQRS, event sourcing, saga)
Detailed Agenda
Section titled “Detailed Agenda”Day 1: Advanced Producers and Consumers
Section titled “Day 1: Advanced Producers and Consumers”Module 1: Advanced Producer Patterns
- Idempotent producers and exactly-once delivery
- Transactions for atomic multi-topic writes
- Custom partitioners and interceptors
- Performance tuning — batching, compression, acks
- Hands-on: Build a transactional producer
Module 2: Advanced Consumer Patterns
- Manual partition assignment vs subscribe
- Cooperative incremental rebalancing
- Pause/resume for backpressure handling
- Graceful shutdown and offset commit strategies
- Hands-on: Build a resilient consumer with manual offset management
Module 3: Error Handling
- Dead letter queues (DLQ) for poison pills
- Retry topics with exponential backoff
- Error classification and routing
- Circuit breaker pattern for external dependencies
- Hands-on: Implement DLQ and retry patterns
Day 2: Schema Registry and Kafka Streams
Section titled “Day 2: Schema Registry and Kafka Streams”Module 4: Schema Registry
- Avro, Protobuf, and JSON Schema with Kafka
- Schema registration and compatibility modes
- Schema evolution — backward, forward, full compatibility
- SerDe configuration for producers and consumers
- Hands-on: Implement schema evolution in a running system
Module 5: Kafka Streams Fundamentals
- Stream processing topology — source, processor, sink
- Stateless operations — filter, map, flatMap, branch
- KStream and KTable abstractions
- Windowed operations — tumbling, hopping, sliding, session
- Hands-on: Build a real-time event counter
Module 6: Kafka Streams Advanced
- Stateful operations — aggregate, reduce, count
- KStream-KTable joins and KTable-KTable joins
- Interactive queries for state store access
- Exactly-once processing guarantees
- Hands-on: Build a real-time enrichment pipeline
Day 3: Patterns and Testing
Section titled “Day 3: Patterns and Testing”Module 7: Event-Driven Design Patterns
- Event sourcing with Kafka
- CQRS — command query responsibility segregation
- Saga pattern for distributed transactions
- Outbox pattern with CDC
- Hands-on: Implement event sourcing with Kafka
Module 8: Testing Kafka Applications
- Unit testing with MockProducer/MockConsumer
- TopologyTestDriver for Kafka Streams
- Integration testing with Testcontainers
- End-to-end testing strategies
- Hands-on: Write comprehensive tests for stream processing
Module 9: Production Readiness
- Application configuration best practices
- Monitoring producer and consumer metrics
- Health checks and readiness probes
- Deployment strategies for stateful applications
- Hands-on: Add monitoring and health checks to a Kafka application
What’s Included
Section titled “What’s Included”- Access to hands-on lab environments
- Course slides and reference materials
- Application templates and testing frameworks
- Post-training email support (30 days)
Request This Training
Section titled “Request This Training”Ready to bring Kafka development training to your team? Contact me to discuss dates, group size, and customization options.