Building a Pragmatic Data Platform with dbt and Snowflake, by Roberto Zagni and Jakob Brandel
Transform scattered data into a scalable, governed, and business-ready modern data platform using proven dbt and Snowflake patterns that simplify architecture, accelerate delivery, and keep your team focused on solving real problems instead of wrestling with unnecessary complexity.
The pragmatic data platform architecture
Comparing PDP to other architectural styles
Data engineering best practices and DataOps
Chapter review
Recommended resources
Sample project and code
The pragmatic data stack
Initial platform setup
Environments
Users, roles, and granular data access
Pragmatic Data Platform core role setup
Automated project setup
Bootstrapping of dbt project
User setup
Completion of dbt project setup
Chapter review
Recommended resources
Sample project and code
Pragmatic data platform governance
Data mesh & data products
Handling Personably Identifiable Information (PII)
Data flow across data projects
Chapter review
Recommended resources
Sample project and code
Project organization and naming
Deployment and git branches
The release process
Releasing from QA to PROD environments
Releasing to production
Database change management
Database migrations
Extraordinary platform operations
Chapter review
Recommended resources
Sample project and code
Why a sample project
The core elements of the Stonks project
The sample data
Developing the sample project
Chapter review
Recommended resources
Sample project and code
Case Study: Rebtel
Case Study: Voi & NordicFeel – Scaling data for urban mobility & e-commerce
Stena Fastigheter’s Data Journey: From reports to predictive insights
Lindex’s data platform modernization: Breaking the monolith
Case Study: OutSystems: Building trust in data
Metso’s data simplification: Making industrial analytics usable
Stora Enso: How patterns, templates, and dbt cloud unlocked scalable, self-service analytics
Traton’s blueprint for data product ownership and collaboration
Chapter review
Recommended resources
Sample project and code
The data life cycle
Pragmatic Data Platform playbook
Organization of raw data, macros, and models
Project QuickStart
Chapter review
Recommended resources
Sample project and code
Data movement and ingestion in customer cases
Data ingestion QuickStart
Permanent storage of extracted data
Data ingestion with dbt and Snowflake
Using and testing the ingested data
Data export to files
Chapter review
Recommended resources
Sample project and code
Introduction to the Stonks ingestion layer
Setting up the Snowflake objects for ingestion
Loading the interactive brokers files
Building the ingestion processes with PDP macros
Using a seed for manual data
Chapter review
Recommended resources
Sample project and code
The storage layer in customer cases
The Storage layer: A foundation for your data platform
Gaining access to data: The role of dbt sources
The Staging Model (STG)
The historization model (HIST)
The versioning model (VER)
A pattern for adding new entities
Advanced concepts in the storage layer
Chapter review
Recommended resources
Sample project and code
The storage layer playbook
The structure for the storage layer
Building the storage layer for the trade entity
Storage layer for the other simple entities
The security embedded entity
The open position source and position entities
The final step: Pull request and release
Chapter review
Recommended resources
Sample project and code
The refined layer in customer cases
Goals and contents of the refined layer
Structuring and configuring the refined layer
Handling historical versus current data
Domain-driven data design and master data management
Data mesh with dbt mesh
Testing business logic
Chapter review
Recommended resources
Sample project and code
Refined layer structure and configuration
Creating a unified security dimension
Building a time series with time-aware joins
Advanced data handling and data quality
Calculating positions from transactions
Building a VER model on top of the position history
Testing the business logic in practice
Chapter review
Recommended resources
Sample project and code
The delivery layer in customer cases
The delivery layer as a data product repository
Structuring and organizing the delivery layer
Building data products for business intelligence
Engineering excellence in the delivery layer
Building data products for advanced use cases
The delivery layer as the key enabler for data mesh
Chapter review
Recommended resources
Sample project and code
Setup for the Portfolio Analysis Mart
Creating the core dimensions
Building the facts
Assembling the user-facing reports
Applying engineering contracts and governance
Building a data product for a Streamlit application
Finalizing and validating the data mart
Chapter review
Recommended resources
Building a Pragmatic Data Platform with dbt and Snowflake provides a hands-on roadmap for creating modern cloud data platforms that are practical, maintainable, and built for the real world. Data architects, analytics engineers, data engineers, BI leaders, and technical managers will discover how to design a data platform that balances governance with agility while supporting analytics, AI, reporting, APIs, and enterprise-scale workloads.
Rather than drowning readers in theory, Roberto Zagni and Jakob Brandel present battle-tested strategies for building data platforms that actually work in production environments. To accelerate your implementation, the authors provide two enterprise-proven dbt packages: the Pragmatic Data Platform package and the Snowflake Project Admin package. The book explains these packages in detail, using the realistic “Stonks” sample project as a hands-on playbook to show you exactly how to deploy them step-by-step. Apply modern DataOps practices. Design layered data architectures. Build automated ingestion pipelines. Engineer reliable storage, refined, and delivery layers. Develop scalable dbt projects with reusable macros, CI/CD workflows, automated testing, version management, historization, and modular domain-driven design.
Readers will explore practical approaches to data modeling, data governance, data mesh, security, PII handling, release management, and cloud-native analytics engineering using Snowflake and dbt Cloud. Every chapter focuses on practical implementation patterns, automation techniques, and scalable engineering workflows that reduce technical debt and improve collaboration across data teams. The book also compares architectural styles, including Kimball, Data Vault, Medallion Architecture, and Inmon approaches, so teams can confidently choose the right strategy for their organization.
Analyze real customer case studies from organizations modernizing their analytics environments with dbt and Snowflake. Optimize ingestion workflows. Build historical and versioned models. Create data marts, star schemas, and business-ready delivery layers that support reporting, machine learning, APIs, and self-service analytics.
Strengthen your ability to lead modern analytics initiatives with clear guidance grounded in years of enterprise experience. Evaluate tradeoffs between flexibility and governance. Integrate DevOps principles into analytics engineering. Simplify complex transformations with reusable dbt macros and testing frameworks. Build platforms that remain auditable, extensible, and resilient as business requirements evolve.
Whether you are migrating from legacy ETL systems, launching a new cloud data warehouse, modernizing business intelligence workflows, or building a future-ready data engineering practice, this book provides the architecture patterns, implementation guidance, and operational discipline needed to succeed with modern data platforms. Perfect for readers seeking books on dbt, Snowflake, analytics engineering, data architecture, DataOps, cloud data platforms, data warehousing, a modern data stack, ELT pipelines, data modeling, data governance, scalable analytics, business intelligence, data mesh, dimensional modeling, and enterprise data engineering.
Roberto Zagni is a senior data architect, Agile coach, and thought leader with over two decades of experience across diverse industries. Trained as an Electronic Engineer, he specializes in bringing software engineering best practices to data management, helping multinational organizations transition from legacy systems to modern, automated cloud data platforms using DataOps. Roberto is passionate about building high-performing teams and practical, scalable architectures, championing a philosophy that moves data engineering “from art to industry.” His go-to stack includes dbt Cloud and Snowflake. He is the creator of the Pragmatic Data Platform architecture (pragmatic-data.org) and two public dbt packages, as well as the author of Data Engineering with dbt (2023).
Jakob Brandel is an experienced data leader, educator, and advisor with over 25 years of expertise guiding enterprise organizations through large-scale platform transformations and modernizations. A former engineering leader at Snowflake, Jakob currently serves as the Head of Sales Engineering EMEA at Postgres EDB, bridging the gap between deep technical architecture and real-world business outcomes. Deeply committed to mentorship and clear, actionable education, he also serves as an instructor at Hyper Island and Nackademin, teaching data engineering and modern data platform strategies to the next generation of professionals. He holds a degree in Data Science from the KTH Royal Institute of Technology and a master’s degree from the Stockholm School of Economics.
Please complete all fields.