Adrienne Vermorel
Claude Code for Data People: What It Is and Why You Should Care
You’re building a base model. You’ve got SQL in one tab, the YAML schema in another, a Jinja macro reference in a third, and you’re looking up how to handle a nested JSON column in BigQuery. This context-switching is normal for data work, but it’s also where a lot of time goes.
What Claude Code Actually Is
If you’ve used ChatGPT or Copilot, you might assume Claude Code is similar, but it’s a different kind of tool.
Claude Code is an agentic coding tool. A chatbot answers questions, autocomplete suggests the next line, but an agent acts: it reads your files, understands your project structure, asks you questions, writes code, runs commands, and iterates based on results.
When you start Claude Code in your dbt project, it doesn’t ask you to copy-paste code into a chat window. It reads your dbt_project.yml, scans your model directories, and notices your naming conventions and patterns. When you ask it to create a new base model, it follows your existing patterns rather than some generic template.
The key difference is that there is no manual context selection. You don’t need to tell it which files to look at. You describe what you want, and it figures out what it needs to read.
Why Data People Should Care
According to dbt Labs’ 2025 State of Analytics Engineering report, 70% of analytics professionals use AI for code development. But most use general-purpose tools like ChatGPT, which can’t see your codebase, don’t know your conventions, and require constant copy-pasting.
Data work is particularly suited for an agentic approach:
We write repetitive code. Base models. Source YAML files. Generic tests. Documentation blocks. The structure is consistent; only the details change. This is what agents handle well.
We context-switch constantly. A single dbt model involves SQL, Jinja templating, YAML configuration, and occasionally Python. A tool that understands all of these together (not in isolated snippets) helps you move faster.
We debug across layers. When a mart model fails, the problem might be in the base layer, the source definition, a macro, or the raw data. An agent that can read your entire project and trace data lineage finds problems faster than tab-switching.
What Changes in Your Workflow
The old workflow: You need to create a base model for a new source table. You look up the table’s schema. You open an existing base model as a template. You copy it, adapt it, forget a column, check the source again, add tests, realise you missed a metadata column, add that, run dbt compile, fix a Jinja syntax error, run again.
The new workflow: “Create a base model for raw_shopify.orders following my existing base model patterns. Include tests for primary key and not-null on required fields.”
You review the diff. You approve. Done.
What changes is where your brain goes. Less time on ‘how do I write this query,’ more time on ‘does this model actually solve the problem?’ Claude handles the translation from idea to code.
Where It Works and Where It Doesn’t
I want to be clear about the limitations, because overpromising helps no one.
Where it works well:
- Boilerplate generation: base models, source YAML, test files, anything with a predictable structure
- Multi-file changes: renaming a column across downstream models, refactoring a macro and updating its calls
- Explaining unfamiliar code: drop into a new codebase and ask “what does this project do?”
- Pattern replication: once you have one good example, it applies that pattern elsewhere reliably
Where it struggles:
- Novel business logic: if you’re designing a complex attribution model or building something genuinely new, Claude Code can’t think through the problem for you. It implements what you describe, but the hard thinking is still yours.
- Ambiguous requirements: when prompts are vague, it makes confident-sounding choices that may not match your intent. You need to be specific.
- Over-engineering: left unchecked, it tends to add more than you asked for. Extra error handling, unnecessary abstractions, comments explaining obvious code. You need to review it carefully.
- Large monorepos: on very large codebases, it can lose track of relevant files or miss patterns buried deep in the project.
My mental model: Claude Code is like a capable junior—fast, productive, but you’re reading every line before it ships.
The Shift
This isn’t about AI replacing data people. The business understanding, data modeling decisions, and quality judgments remain human work.
What changes is the friction between “I know what I need to build” and “I’ve built it.” The tedious translation work (remembering syntax, looking up function signatures, adapting templates) becomes the machine’s job.
For data people, this matters because so much of our work is translation. Business requirements to data models. Raw schemas to clean base layers. Tribal knowledge to documentation.
Getting Started
If this sounds useful, the next step is trying it.
I’ve written a practical guide: Your First Hour with Claude Code as an Analytics Engineer. It covers installation, your first useful prompt, and the minimal setup that makes the difference between a frustrating tool and a useful one.