# Module 4 Summary - Analytics Engineering with dbt

Published: (February 16, 2026 at 05:44 PM EST)
4 min read
Source: Dev.to

Source: Dev.to

Part 1: Introduction to Analytics Engineering & dbt Fundamentals 🎯

What is Analytics Engineering?

The Evolution of Data Roles

Traditionally, there were two main roles in data:

RoleFocusSkills
Data EngineerBuilding pipelines, infrastructure, data movementPython, Spark, Airflow, cloud services
Data AnalystCreating reports, dashboards, insightsSQL, Excel, BI tools

But there was a gapβ€”who transforms the raw data into clean, analysis‑ready tables? Enter the Analytics Engineer.

What Does an Analytics Engineer Do?

An Analytics Engineer sits between Data Engineering and Data Analytics:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Data Engineer  β”‚ ──► β”‚  Analytics Engineer  β”‚ ──► β”‚   Data Analyst  β”‚
β”‚                 β”‚     β”‚                      β”‚     β”‚                 β”‚
β”‚  β€’ Pipelines    β”‚     β”‚  β€’ Transform data    β”‚     β”‚  β€’ Dashboards   β”‚
β”‚  β€’ Infrastructureβ”‚    β”‚  β€’ Data modeling     β”‚     β”‚  β€’ Reports      β”‚
β”‚  β€’ Data movementβ”‚     β”‚  β€’ Quality tests     β”‚     β”‚  β€’ Insights     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚  β€’ Documentation     β”‚     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key responsibilities

  • πŸ“Š Transform raw data into clean, modeled datasets
  • πŸ§ͺ Write tests to ensure data quality
  • πŸ“ Document everything so others can understand
  • πŸ”— Build the β€œT” in ELT (Extract, Load, Transform)

The Kitchen Analogy 🍳

Think of a data warehouse like a restaurant:

AreaAnalogyWho accesses it
Pantry (raw ingredients)Staging area (raw data)Data Engineers
Kitchen (cooking happens)Processing area (transformations)Analytics Engineers
Dining Hall (served dishes)Presentation area (final tables)Business users, Analysts

Raw ingredients (data) come in, get processed (transformed), and are served as polished dishes (analytics‑ready tables).

What is dbt? πŸ› οΈ

dbt stands for data build tool. It is the most popular tool for analytics engineering.

The Problems dbt Solves

Before dbt, data transformation was messy:

  • ❌ SQL scripts scattered everywhere with no organization
  • ❌ No version control (changes got lost)
  • ❌ No testing (errors discovered too late)
  • ❌ No documentation (nobody knew what anything meant)
  • ❌ No environments (changes went straight to production!)

dbt brings software‑engineering best practices to analytics:

  • βœ… Version control – Your SQL lives in Git
  • βœ… Modularity – Reusable pieces instead of copy‑paste
  • βœ… Testing – Automated data quality checks
  • βœ… Documentation – Generated from your code
  • βœ… Environments – Separate dev and prod

How dbt Works

dbt follows a simple principle: write SQL, dbt handles the rest.

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                     Your dbt Project                        β”‚
β”‚                                                             β”‚
β”‚   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚
β”‚   β”‚  models/*.sql │───►│   dbt compile │───►│ SQL Queriesβ”‚ β”‚
β”‚   β”‚  (your logic) β”‚    β”‚   dbt run     β”‚    β”‚ (executed) β”‚ β”‚
β”‚   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚                              β”‚                              β”‚
β”‚                              β–Ό                              β”‚
β”‚                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                     β”‚
β”‚                    β”‚  Data Warehouse  β”‚                     β”‚
β”‚                    β”‚  (views/tables)  β”‚                     β”‚
β”‚                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
  • Write SQL files (called models)
  • dbt compiles them (adds warehouse‑specific syntax)
  • dbt runs them against your data warehouse
  • Views/tables are created automatically

dbt Core vs dbt Cloud

Featuredbt Coredbt Cloud
CostFree (open source)Free tier + paid plans
Where it runsYour machine/serverCloud‑hosted
SetupManual installationBrowser‑based IDE
SchedulingNeed external toolBuilt‑in scheduler
Best forLocal development, cost savingsTeams, ease of use

πŸ’‘ For this course: You can use either! Local setup uses DuckDB + dbt Core (free). Cloud setup uses BigQuery + dbt Cloud.

0 views
Back to Blog

Related posts

Read more Β»

Preface

Motivation I wanted to record my studies to have consistency. Since I don't directly learn building projects from my CS program, I want to be an expert in my a...