Wrenched
Browser-based incident lab

You finished the dbt course. Your interviewer wants to know if you can debug a broken backfill at 3 a.m.

Wrenched is hands-on practice for the data engineering job you're interviewing for — schema drift, late-arriving events, unsafe backfills, and failed dbt tests, in a real warehouse, in your browser.

Tutorials teach syntax. Production teaches survival.

Most learning resources focus on writing new code—but production work is about diagnosing failures. You need to read logs, interpret test failures, understand stale data, navigate broken assumptions, and recover from partial state.

Tutorials

Show you how to write a dbt model or configure an Airflow DAG from scratch.

Production

Asks you why the dashboard is showing yesterday's numbers and finance needs an answer in 30 minutes.

Wrenched

Bridges the gap for DEs preparing for their first on-call rotation or their next interview loop.

A workspace designed for incident debugging

Everything you need to investigate and fix the problem

Wrenched — Broken Incremental Load
Files
models
staging
orders_incremental.sql
dim_customers.sql
tests
test_orders.yml
orders_incremental.sql
{{config(
  materialized="incremental",
  unique_key="order_id"
)}}

SELECT
  order_id,
  customer_id,
  order_date,
  -- amount column missing?
FROM source_orders
Scenario
The orders model hasn't captured new orders since Tuesday. Finance reported missing revenue.
Test Results
unique_order_id
not_null_customer_id
freshness_orders

Scenario library

Real failure modes extracted from production incidents

Junior

Schema Drift Breaks Downstream Model

A source column was renamed upstream. Make a customer ingestion model resilient to the rename without losing history.

Junior

Duplicate Revenue Backfill

A backfill double-loaded a week of revenue. Find the duplicates and restore correct daily totals.

Mid

Late Arriving Events Break Daily Metrics

A daily metrics pipeline misses out-of-order events and breaks on rerun. Make it correct and idempotent.

Mid

Unique Test Fails After SCD Source Change

A dbt unique test started failing after the source went SCD2. Decide whether the test, the model, or the business logic is wrong.

Senior

Partition Pruning Skipped Silently

An FY2024 revenue query scans the full table instead of one partition. Diagnose why the planner refuses to prune.

Senior

Daily Revenue Won't Reconcile With Finance

Daily revenue is off by a day for some regions. Track a timezone bug through aggregation and reconcile with finance's numbers.

How it works

Each scenario follows a structured incident workflow

01

Open an incident

Start with a realistic scenario: something is broken, stakeholders are asking questions, and you need to investigate.

02

Inspect files, logs, tests, and symptoms

Explore the codebase, read error messages, check test results, and examine data symptoms to understand what went wrong.

03

Fix the pipeline

Edit the code, configuration, or SQL to address the root cause. Apply your diagnosis to a working fix.

04

Run validation

Execute tests and checks to verify your fix works. See immediate feedback on whether the incident is resolved.

05

Write the postmortem

Explain what broke, why it broke, and what you'd do differently. Submitted alongside your fix and graded on completeness.

06

Review the solution

Compare your approach against the reference solution. Learn alternative fixes and best practices.

Built for practitioners who want production experience

Whether you're starting out or leveling up

Junior Data Engineers

Build the debugging intuition that separates juniors from mid-levels without waiting for production access.

Analytics Engineers

Practice the dbt debugging, data quality triage, and stakeholder communication that defines the role.

Career Switchers

Gain practical incident experience that bridges the gap between bootcamp projects and production work.

Bootcamp Graduates

Supplement your portfolio with evidence that you can diagnose and fix real production issues.

Interview Prep

Prepare for debugging interviews and on-call scenarios with realistic incident simulations.

For hiring teams

Replace your LeetCode SQL screen with incidents that actually predict on-call performance.

HackerRank tests syntax. We test survival. Get early access to the team plan — invite candidates to debug real broken pipelines, see how they think under stakeholder pressure, and read the postmortem they ship.