How to Set Up a dbt Cloud Developer Sandbox for Each Developer
A step-by-step guide to configure isolated developer environments in dbt Cloud using Snowflake, Git, and CI/CD best practices. Ideal for scaling your data team without breaking production.
ADVANCED DATA ENGINEERING & IMPLEMENTATION
Kiran Yenugudhati
3/30/20252 min read
🧭 Why Developer Sandboxes Matter
As your team grows, developers need safe, isolated environments to:
Test dbt models without impacting shared datasets
Iterate faster using their own compute
Prevent accidental overwrites in production environments
In this guide, I’ll walk through how we set this up at Actuvate using dbt Cloud Team/Enterprise, Snowflake, and Git.
🧰 Prerequisites
Before we dive in, make sure you have:
✅ A dbt Cloud Team or Enterprise account
✅ Access to Snowflake with role/warehouse provisioning rights
✅ GitHub/Bitbucket/GitLab integration with dbt Cloud
✅ A dbt project with production/development branches
🛠️ Step-by-Step Setup
Create Developer Roles in Snowflake
CREATE ROLE DEV_ENGINEER_FR;
GRANT USAGE ON DATABASE DEV_ANALYTICS_DB TO ROLE DEV_ENGINEER_FR;
GRANT USAGE ON SCHEMA DEV_ANALYTICS_DB.BRONZE TO ROLE DEV_ENGINEER_FR;
GRANT ALL PRIVILEGES ON SCHEMA DEV_ANALYTICS_DB.BRONZE TO ROLE DEV_ENGINEER_FR;
Warehouse Grant
GRANT USAGE ON WAREHOUSE DEV_ENGINEER_WH TO ROLE DEV_ENGINEER_FR;
Configure dbt Cloud Environment
In dbt Cloud, you’ll create isolated development environments for each developer, backed by their own schema and Snowflake credentials. Here’s how to set it up:
🔹 Create a New Development Environment
Navigate to Environments → Create Environment
Choose Environment Type = Development
🔹 Set Up Developer Credentials
Click on your Profile Avatar → Credentials
Choose the right Project
Under Deployment Credentials, input:
Snowflake username/password
Role: DEV_ENGINEER_FR
Database: DEV_ANALYTICS_DB
Warehouse: DEV_ENGINEER_WH
Schema: e.g. DBT_SYENUGUDHATI, DBT_RAJAVR (developer-specific)
💡 Target: Leave as default for sandbox environments; use dev, qa, or prod for deployment stages
🔹 Configure dbt_project.yml
Update your dbt_project.yml to reference the correct schema based on environment or developer sandbox:
Git Branching Strategy
To keep development organized and avoid breaking production, we follow a simple Git workflow:
All new work starts from the develop branch.
Each developer creates their own feature branch from develop.
Branch naming format:
feature-syenugudhati-your-feature-name
This helps identify who is working on what and keeps changes isolated.
Once your work is done and tested in your dbt Cloud sandbox:
Create a pull request to merge your branch into develop.
After review and testing, develop is merged into main when ready for release.
📌 Conclusion
Setting up developer sandboxes in dbt Cloud is a low-lift, high-impact move for growing teams. It empowers developers to build fearlessly while keeping production safe and clean.
At Actuvate, this setup has become a best practice for every client we onboard.


ACTUVATE PTY LTD
Delivering strategic data architecture, cloud engineering, and AI-driven solutions
Connect
Insights
contact@actuvate.com.au
© 2024. All rights reserved.