Course · Data platforms
Snowflake
Snowflake is a cloud data warehouse that separates storage from compute. Learn virtual warehouses, micro-partitions, pruning, caching and cost control.
- Lessons
- 12
- Interview questions
- 2
- Projects & case studies
- 6
- Reading time
- ~3 h
Your progress
Saved in this browser onlyCourse structure
- 1 lessonStart hereThe complete overview of the course in one read.
- 2 lessonsBeginnerCore concepts you will use every day.
- 6 lessonsIntermediatePatterns used in production pipelines.
- 3 lessonsAdvancedPerformance, internals and edge cases.
Practise
- InterviewSnowflake interview questionsThe full list with difficulty, type and a box to tick off each one.
- Cheat sheetSnowflake Cheat SheetA quick Snowflake reference: warehouses, loading data, time travel, cloning, clustering, query profiling and the habits that keep compute costs under control.
- InterviewAll interview questionsEvery question across all topics in one filterable list.
Lessons
Work through the lessons in order. Completed lessons show a tick; lessons you have opened are outlined.
Start here
The complete overview of the course in one read.
Beginner
Core concepts you will use every day.
- Snowflake Architecture: Storage, Compute and Cloud ServicesHow Snowflake's storage, compute and cloud services layers fit together: micro-partitions, virtual warehouses, metadata, editions, credits and the three caches.
- Loading Data into Snowflake: Stages, COPY INTO and SnowpipeLoad files into Snowflake with file formats, internal and external stages and COPY INTO, then automate it with Snowpipe auto-ingest, the REST API and Snowpipe Streaming.
Intermediate
Patterns used in production pipelines.
- Snowflake Virtual Warehouses: Sizing, Scaling and ConcurrencySize Snowflake virtual warehouses, choose between scaling up and out, configure multi-cluster warehouses and auto-suspend, read queueing and set resource monitors.
- Snowflake Micro-Partitions, Clustering and Search OptimizationHow Snowflake micro-partitions and their metadata drive pruning, how to measure clustering depth, when clustering keys pay off, and when search optimization fits better.
- Snowflake Streams and Tasks: Change Data Capture and SchedulingUse Snowflake streams to capture inserts, updates and deletes, and tasks to process them on a schedule or trigger: offsets, staleness, task graphs and error handling.
- Snowflake Time Travel, Fail-safe and Zero-Copy CloningQuery and restore past data with Snowflake Time Travel, set retention by edition, understand the 7-day Fail-safe and use zero-copy clones safely.
- Snowflake Table Types and Semi-Structured Data: VARIANT, FLATTEN, Dynamic and Iceberg TablesChoose between permanent, transient, temporary, external, dynamic and Iceberg tables in Snowflake, and query JSON with VARIANT paths and FLATTEN.
- Snowflake vs Databricks: How to Compare ThemA neutral framework for comparing Snowflake and Databricks: workloads, data formats, governance, operations, skills and cost, instead of a winner-takes-all verdict.
Advanced
Performance, internals and edge cases.
- Snowflake Security: RBAC, Masking, Row Access Policies and Network PoliciesDesign Snowflake access control with roles and ownership, protect data with masking, row access policies and secure views, and lock down network access.
- Snowflake Cost Optimization: Credits, Right-Sizing and Storage CostsFind where Snowflake credits go with ACCOUNT_USAGE, right-size warehouses, tune auto-suspend, avoid spilling, and control storage and materialized view costs.
- Snowflake Data Sharing, Reader Accounts and the MarketplaceShare live Snowflake data without copying it: shares and grants, reader accounts, Marketplace listings, exchanges, and sharing across regions and clouds.
Projects and case studies
Apply what you learned and prepare material to discuss in interviews.
Projects
System design case studies
- AdvancedDesign a CDC Pipeline from an OLTP Database to the WarehouseReplicate inserts, updates and deletes from a production PostgreSQL (or MySQL) database into the analytics warehouse within minutes, keeping both a current-state copy and a change history, without adding query load to the source or losing a single change.
- AdvancedDesign a Cloud Data Warehouse for a SaaS ProductDesign a cloud data warehouse for a B2B SaaS company that consolidates its multi-tenant product database, product usage events, billing system and CRM, so the company can run trusted revenue and usage reporting (MRR, churn, activation) and offer usage analytics to its own customers without one customer ever seeing another's data.
- AdvancedDesign a Cost-Optimised Warehouse StrategyA company's cloud warehouse bill has tripled in a year to well over the budget, while data volume only doubled. Nobody can say which teams, pipelines or dashboards drive the spend. Design a strategy that makes cost visible and attributable, cuts waste without hurting SLAs, chooses the right pricing model, and keeps cost growing slower than usage from now on.
- IntermediateDesign an ELT Pipeline with dbtA growing company loads data from its product database, Stripe, Salesforce and web events into Snowflake with hand-written scripts and runs hundreds of untested SQL views. Design an ELT pipeline built on dbt that loads raw data reliably, transforms it into tested, documented models, deploys changes safely, and finishes the daily build before the business day starts.
- AdvancedDesign a Multi-Tenant Data PlatformA B2B SaaS company with 4,000 customer organisations wants to offer in-product analytics, scheduled exports and a data-sharing feature, built on a shared data platform. Design a multi-tenant data platform that ingests each tenant's data, keeps tenants strictly isolated, gives every tenant fast and fair query performance, supports enterprise tenants with stronger isolation and residency needs, and attributes cost per tenant.
Resources
Cheat sheets
Related courses
- SQLSQL is the core language of data work: querying, transforming and modelling data in warehouses, lakehouses and Spark. Start here before any other tool.
- Data modelingData modeling and warehousing: star schemas and grain, fact and dimension design, SCDs, Data Vault and other methods, dbt, semantic layers and incremental models.
- ETL and ELTETL transforms data before loading it; ELT loads first and transforms inside the warehouse or lakehouse. Learn when each fits.

