More The Pragmatic Engineer episodes

Designing Data-intensive Applications with Martin Kleppmann thumbnail

Designing Data-intensive Applications with Martin Kleppmann

Published 22 Apr 2026

Duration: 01:25:00

The second edition of *Designing Data-Intensive Applications* updates its focus to cloud-native systems, serverless architectures, and data lakes while addressing distributed system challenges, ethical engineering, decentralized software, and emerging trends like AI integration and cryptographic supply chain applications.

Episode Description

Brought to You By:Statsig The unified platform for flags, analytics, experiments, and more.Sonar The makers of SonarQube, the industry standard for au...

Overview

The podcast discusses the second edition of Designing Data-Intensive Applications, emphasizing its updated focus on modern data system design, including cloud-native architectures, serverless computing, data lakes, and AI-related systems like vector indexes. The author, Martin Klutman, reflects on his career transition from industry to academia, co-founding startups, and working on LinkedIns infrastructure, including Kafka. The books structure explores foundational principles of data systems, reliability, scalability, and maintainability, while addressing challenges like decentralized access, distributed processing, and ethical considerations in engineering. Klutman highlights the importance of understanding system internals for troubleshooting and decision-making, even when using managed services, and contrasts the trade-offs between abstraction and deep technical knowledge.

Key themes include the evolution from traditional to cloud-based architectures, the role of formal verification in ensuring system correctness, and the complexities of decentralized systems, such as access control and data synchronization. The second edition incorporates lessons from LinkedIns use of Kafka as a log-based system for data integration and expands into areas like local-first software and supply chain verification via cryptography. The podcast also touches on the tension between academic researchs focus on long-term, theoretical challenges and industrys pragmatic, short-term goals, while underscoring the need for engineers to weigh technical, societal, and financial trade-offs in system design.

Recent Episodes of The Pragmatic Engineer

15 Jul 2026 Context engineering with Dex Horthy

"Explores AI's role in software development, addressing challenges like code quality, human oversight, and balancing automation with human judgment while evaluating different AI-assisted approaches and future implications."

1 Jul 2026 How Kent Beck shapes the software engineering industry

Ken Beck's career in software engineering, contributions to TDD, XP, and the Agile Manifesto, critiques of Agile commercialization, AI's impact, challenges of OOP, Smalltalk's legacy, JUnit, and the balance between technical mastery and human-centric skills in evolving development practices.

24 Jun 2026 Tech interviews with NeetCode

Engineering careers are shifting from algorithm memorization to problem-solving and critical thinking amid AI's influence, critiquing outdated hiring practices, highlighting adaptation divides, trade-offs, cultural contrasts, and the enduring need for human-driven decision-making in tech.

27 May 2026 Building OpenCode with Dax Raad

OpenCode's rapid growth to 10 million users highlights challenges like feature overload and AI's limited impact on development speed, while underscoring tensions between innovation, product cohesion, sustainable practices, and the complexities of AI-driven workflows in software engineering.

20 May 2026 Why Rust is different, with Alice Ryhl

Rust prioritizes memory safety and performance via ownership, borrow checking, and `unsafe` blocks without garbage collection, balancing robust governance, community-driven tools like Cargo and Tokio, safety features including null safety and exhaustive pattern matching, and ongoing efforts to simplify learning curves and integrate AI-driven development, while standing out in system programming compared to TypeScript, JavaScript, and C++.

More The Pragmatic Engineer episodes