Skip to content
Lubo Bali
All projects

Data pipelinesData quality

Write, audit, publish (dbt + Airflow)

Bad data stops at the door: tested first, published only if every test passes

3SQL files replace 300+ lines of Python

See the code on GitHub (opens in a new tab)

Proof you can check:Code on GitHub

Data pipelines

Bad data never reaches production

  1. Writenew data lands in an audit table first
  2. Auditdbt tests: unique, not empty, prices above zero
  3. Publishmerged into production only if every test passed
  • Production table
  • Pipeline stopped

Lubo Bali · lubobali.com

No. 17dbt · Airflow · Snowflake

The problem

When bad data lands in production tables, every dashboard and report built on them is wrong before anyone notices.

What I built

A Write-Audit-Publish pipeline: new data lands in an audit table, dbt tests run there (unique, not empty, prices above zero), and only if all pass does it merge into production.

Tech & why

dbt for tested SQL instead of custom Python, Airflow (with Cosmos) to run it on a schedule and show exactly where it stopped, Snowflake as the warehouse.

  • dbt
  • Airflow
  • Snowflake
  • SQL

The result

One failed test stops the pipeline, so bad data never reaches production, and 300+ lines of Python became 3 SQL files.

Similar projects

Have a problem like this? Get your free AI blueprint in about a minute.

Tell me your problem. I'll find a way to build the solution.

Available now

Book a free 30-min call (opens Calendly in a new tab)

No obligation. Pick a time that suits you.

Prefer email?data@lubobali.com