Preparing for SnowPro Core Certification - Hints, tips, and advice to put you in good stead
This post provides advice for those working towards SnowPro Core certification, the advice I wish I had!
1. Exam Overview
Snowflake's SnowPro Core certification exam guide gives an overview of the exam, providing information relating to the main topics, exam logistics, and recommended training. Where the main themes (and weighting) are as follows:
- Account and Security (10–15%)
- Virtual Warehouses (15–20%)
- Data Movement (11–20%)
- Performance Management (5–10%)
- Snowflake Overview and Architecture (25–30%)
- Storage and Protection (10–15%)
2. Target Exam Candidate
The certification exam guide recommends a combination of hands-on experience and instructor-led training as preparation for the exam. I think you should have at least six months (more like one year) of hands-on experience. More importantly, having exposure to common problems, such as considerations relating to:
- Access control — e.g., creating custom role hierarchies and privileges required to access particular objects
- Data loading/unloading — e.g., options for securely loading/unloading data from cloud providers
- Warehouse design — number of warehouses, size, multi-clustered? Scaling out vs scaling up?
And even just exposure to more day-to-day things, such as:
- Limitations of Materialized Views in Snowflake
- Usage of the command-line tool, SnowSQL
- The purpose of and constraints of using Snowflake Tasks
3. My Study Approach
TL;DR — Main Resources Used
- Snowflake University ‘Level Up' Series
- SnowPro Core certification exam guide — quite helpful but messy!
- Snowflake's Reference Documentation
- Udemy SnowPro Certification Practice Papers
- SnowPro Certification Cheat Sheet | Medium.com blog post
Note — be mindful when reading the below; I had approximately one year of experience of using Snowflake before sitting the exam.
Good Starting Point — Snowflake University ‘Level Up' Series
Link: Snowflake University ‘Level Up' series
The three level-up series from Snowflake University that I found helpful are:
These provide an excellent starting point to cover the main topics of the exam.
SnowPro Study Guide — Quite Messy!
- One of the items listed within the SnowPro Core certification exam guide recommended training is the SnowPro CORE Study Guide.
- While it does contain helpful information, it's not the easiest to read!
- It lists a bullet-pointed breakdown of topics, followed by a sporadic list of links without any description!
Snowflake's Reference Documentation
Link: https://docs.snowflake.com/en/index.html
I'd recommend bookmarking this, having it ready to hand. Especially, for example, when going through the level-up series content.
Go through the reference documentation with code examples
There's a lot of detailed content here to go through, and you're not going to comprehend it all in one go
I'd instead recommend iteratively going through the reference documentation as and when you come across a topic you only have a vague understanding of
Udemy SnowPro Certification Practice Papers — Recommended!
Link: https://www.udemy.com/course/snowflake-certification-preparation/
Given that these are unofficial practice papers, I was very dubious whether they accurately represented candidate questions for the exam. But put your fears aside, as these were my best resource for the exam! They were valuable for highlighting subject areas I came to realise I only knew at a high level and I needed to develop a more detailed understanding.
The author of the practice papers often brings up detailed questions that he admits would be unlikely to come up in the exam, but it fills you with confidence that you're covering a breadth of comprehensive knowledge.
SnowPro Certification Cheat Sheet | Medium.com blog post
Link: SnowPro Certification Cheat Sheet | Medium.com blog post
Finally, this blog post on Medium provides some good cheat sheets that the author put together. Similar to my point around the Snowflake reference documentation, I'd recommend iteratively coming back to the cheat sheets rather than try and take in all the information the first time.
The message is quite punchy (in a good way), but I found reading and understanding a given topic myself and then referring back to the cheat sheets to be very useful.
4. My Advice — Create a Trial Account & Start Building Examples!
I mentioned above that I had approximately one year of experience using Snowflake before sitting the exam. I think this made me a good candidate for the exam, as there were still multiple subject areas I had little previous exposure to (mentioned in the topic that follows, ‘Topics I Had Little Exposure To').
But as a result of this previous experience, I encountered firsthand many considerations and limitations in Snowflake that authors frequently ask as questions in practice papers. For example:
- ‘Users can assign a resource monitor to multiple Snowflake Warehouses' — I have first-hand experience of knowing this isn't true
- ‘A Snowflake task can execute multiple SQL commands' — again, I've seen first-hand that this isn't possible
- ‘Materialized Views in Snowflake do not require a manual refresh to be performed if changes are made to the underlying data' — this is true, as Snowflake manages Materialized Views
- ‘A Storage Integration object is used to generate credentials used to authenticate communication from a cloud provider to Snowflake. In addition, when a Storage Integration object is altered, any dependant Snowflake stages need to be refreshed' — again, I ran into this problem
There are numerous similar examples I can name. Still, either way, my advice is to try building working models of code described in the level-up series' and Snowflake documentation.
5. Topics I Had Little Previous Exposure To
Despite having previous hands-on experience and encountering some of the things I've highlighted in my advice, there were a few topics that I previously had little to no exposure to which I haven't had exposure. These topics came up in the exam (and in the practice papers), so I'd recommend familiarizing yourself with these:
- Continuous Data Protection: e.g. Time-travel, Fail-safe, Zero Copy Clones
- Account usage information: especially information relating to using the Snowflake database schemas: ACCOUNT_USAGE & INFORMATION_SCHEMA
E.g. Where to go to find information on how much storage has been used across the account? And where to go to find information for getting an audit of what objects have been used.
- Security Principles: e.g. data encryption, Federated Authentication, and SSO
- Clustering Keys & Clustered Tables
- Micro-partitions & Data Clustering
E.g. Understanding how a query is clustered by default and, in lieu, using the query profile to understand the micro-partition structure of a Snowflake query.
As well as topics around more edge case data loading objects, in particular:
- Snowflake Streams (and details around the change tracking implementation)
- The SnowPipe REST API
- The Snowflake Kafka Connector
- And SnowPipe arguments and features, e.g., $PIPE_STATUS
I hope this information helps you prepare and get the most out of your SnowPro Core exam experience. Feel free to reach out to me on LinkedIn here if you have any questions!.