bestcourses is supported by learners. When you buy through links on our website, we may earn an affiliate commission. Learn more

Terraform Snowflake from Scratch

Complete guide to Managing Snowflake with Terraform

5 / 5.0
28 students10 hours 26 minutes

Created by Jeremy Holtzman, offered on Udemy

bestcourses score™

Student feedback


To make sure that we score courses properly, we pay a lot of attention to the reviews students leave on courses and how many students are taking a course in the first place. This course has a total of 28 students which left 1 reviews at an average rating of 5, which is average.

Course length


We analyze course length to see if courses cover all important aspects of a topic, taking into account how long the course is compared to the category average. This course has a length of 10 hours 26 minutes, which is pretty short. This might not be a bad thing, but we've found that longer courses are often more detailed & comprehensive. The average course length for this entire category is 7 hours 54 minutes.

Overall score


This course currently has a bestcourses score of 5.4/10, which makes it an average course. Overall, there are probably better courses available for this topic on our platform.



Terraform is an incredibly powerful tool to manage infrastructure, especially Snowflake. The first few sections in this course set you up with the fundamentals for success, while the advanced sections in the end provide more details on completely building out your architecture.

The price of the course is based on the time and effort put into it, but at the same time, I want it to be affordable for all. If the price is an issue, please reach out and I'll be happy to figure it out with you.

What you'll learn

By the end of the class, you'll have completely connected your own Terraform and Snowflake accounts following best practices, and you'll be able to manage your Snowflake objects (users, roles, warehouses, databases, etc.) with Terraform. Some of these skills you'll gain include:

  • Manage all types of Snowflake objects using modules that can easily be reused

  • Grant privileges on all of these objects, including future grants that simplify the management of databases and schemas

  • Creation and management of roles in a hierarchical structure to simplify grants

  • Ability to import existing Snowflake objects into your Terraform configuration

  • Setting up a DEV and PROD Snowflake account, and using GitHub to manage it all

Why you should use Terraform to manage your Snowflake account

Snowflake is an incredible data warehouse critical to thousands of organizations. But effectively managing Snowflake at scale has been difficult, until we start taking advantage of Terraform.

Some of the benefits of using Terraform with Snowflake include:

  • Speeding up manual and repetitive tasks

  • Standardization of roles and privileges

  • Auditability of privileges

  • Code review for the management of Snowflake objects

Essentially, Terraform allows you to use Infrastructure as Code to manage your Snowflake account. The state of Snowflake objects is controlled by the configuration you set up in Terraform, which makes it simple to manage.

About Terraform

Terraform is an open-source infrastructure as code software tool that provides a consistent CLI workflow to manage hundreds of cloud services. Terraform codifies cloud APIs into declarative configuration files. There is a specific provider plugin that allows you to manage your Snowflake account with Terraform.

What you will learn

  • Connect Terraform to Snowflake
  • Run Terraform plans and applies
  • Create and manage Snowflake objects with Terraform
  • Grant privileges on Snowflake objects to roles using Terraform
  • Create custom modules to manage Snowflake objects with Terraform at scale
  • Advanced Terraform features including imports, moves, and removes
  • How to set up and use Terraform Cloud
  • Proper Snowflake authentication with Key Pair or OAuth
  • Connecting Terraform to Github to view plans before merging in
  • Managing a DEV and PROD Snowflake account with Terraform
  • Terraforming Snowflake best practices


  • SQL
  • git
  • Ability to work in the command line
Udemy logo
Available on


With almost 200,000 courses and close to 50 million students, Udemy is one of the most visited online learning platforms. Popular topics include software development, the digital economy, but also more traditional topics like cooking and music.

Frequently asked questions

  • Price: $44.99
  • Platform: Udemy
  • Language: English
  • 10 hours 26 minutes
Terraform Snowflake from Scratch thumbnail

bestcourses score: 5.4/10

There might be better courses available for this topic.