-

How Salesforce Data Cloud Zero Copy Actually Works With Snowflake
Your data engineer says the customer data already lives in Snowflake — all of it, clean, modeled, production-ready. Your architect wants to copy it into Salesforce Data Cloud. You’re running the mental math on storage costs, pipeline maintenance, and the inevitable sync drift between two copies of the same truth. This is the exact problem…
-

Building a Bulletproof ETL Audit Logger: Capturing Airflow Execution Context in Snowflake
The 2 a.m. page said the pipeline “succeeded.” The dashboard was green. And the finance team was still staring at yesterday’s numbers, because one task in a forty-task DAG had quietly processed the wrong micro-batch window and nobody could prove when, or why, without SSH-ing into a worker and grepping logs by hand. That’s the…
-

The 2026 Migration Trap: Moving from Native Tables to Dynamic Apache Iceberg v3 in Snowflake
The pitch is intoxicating and mostly true: keep your data in open Apache Iceberg format on your own object storage, let external engines read it, and let Snowflake’s Dynamic Tables handle the low-latency transformations on top — one declarative pipeline, no lock-in, a real lakehouse. In 2026, with Iceberg v3 generally available on Snowflake since…
-

Governing AI Agents: Securing Snowflake CoCo and MCP Workflows in Production
This post is for data and platform engineers putting Snowflake Cortex Code (CoCo) agents and MCP integrations into production. It explains why an agent inherits the full reach of its role, and walks through the controls that limit the damage when a prompt injection gets through: agent identity, data movement policies, multi-party approval and the…
-

The Dark Side of dbt Unit Testing in Snowflake: Managing Credit Burn on Large Test Suites
Our CI got slower and more expensive at exactly the same rate our test suite got better, and for a while nobody connected the two. We’d done everything the best-practice blog posts told us to: added dbt unit tests to lock down the gnarly transformation logic, wired them into CI so every pull request ran…
-

Dynamic Airflow DAGs via Snowflake Metadata: Eliminating Hardcoded Pipeline Tasks
I once inherited an Airflow repo with 214 DAG files that were, functionally, the same DAG. Each one extracted a table from a source system, loaded it into Snowflake, and ran a transform. The only differences between them were the table name, the schedule, and which SQL file to run. Someone had copy-pasted the template…
-

Debugging Zero-Copy Clone Storage Costs in CI/CD
The Snowflake bill for our CI account had roughly tripled over a quarter, and nobody could point to why. We hadn’t loaded meaningfully more data. Compute was flat. But storage kept climbing, month over month, in an account whose entire job was to spin up throwaway test environments and tear them down. Throwaway. Torn down.…
-

How to Use MCP in Snowflake CoCo Desktop
The first thing I tried to do in CoCo Desktop was ask it to pull the open tickets for a data pipeline I was debugging. It couldn’t. Not because it wasn’t smart enough — it’s genuinely good at reasoning over your Snowflake schemas — but because CoCo’s context ends where Snowflake’s context ends. It knew…
-

Why LLMs give different answers to the same question
The bug report said: “The model is broken. It gives a different answer every time I ask the same question.” I’ve gotten some version of this from three different engineers now, and each time the fix is the same — not a code change, but a change in how they think about what a language…
-

Snowflake Interactive tables: How and when to use them ( From Production)
The first time a product manager asked me why our “real-time” Snowflake dashboard took four seconds to load on a Monday morning, I didn’t have a good answer. The data was fresh. The query was simple — a filtered aggregation over a few million rows. But at 9 a.m., when three hundred people opened the…