Curious how I turn your requests into production-ready dbt code? Let me show you what happens behind the scenes - from understanding your request to delivering clean, tested SQL.
My Coding Process
When you ask me to generate code, I follow a structured process to make sure you get quality output that actually works.
1
Context Gathering
First, I review your project's knowledge graph - table schemas, relationships, and existing models I know about.
2
Pattern Selection
Based on what you need, I pick the right templates and patterns (staging, fact, dimension, etc.).
3
Code Synthesis
I write the SQL and YAML using Jinja templating and dbt best practices I've learned.
4
Quality Check
Before sending it to you, I check for syntax errors, undefined references, and best practice violations.
What I Generate
SQL Models
Clean CTEs with comments
Jinja for dynamic SQL
Consistent naming
Readable formatting
YAML Files
Schema definitions
Column descriptions
Tests (unique, not_null)
Documentation
Extra Goodies
Reusable macros
Seed files
Analysis queries
Custom tests
Customize My Output
Want me to code a certain way? Just tell me! Here's what you can customize:
SQL Style
CTEs vs subqueries, comment placement, line breaks
Try: "Use subqueries instead of CTEs"
Naming Conventions
Prefixes, suffixes, case style for models and columns
Try: "Name it stg_stripe__charges, not stg_charges"
Test Coverage
Minimal (keys only) vs comprehensive (all columns)
Try: "Add accepted_values tests for status columns"
Documentation Depth
Brief summaries vs detailed descriptions
Try: "Add detailed docs explaining the business logic"
My Quality Checks
I automatically validate my code before showing it to you. Here's what I look for: