Part of Snowflake's promise is a near zero-maintenance product. Meaning that tasks like installs, upgrades, or capacity planning are a thing of the past. Essentially, most of the work you would associate to traditional database administration.
However, this doesn't mean that you won't need an administrator. It just means that you need a different skills and perhaps a different profile all together.
In this article, I will explain some of these tasks and advise what team you need to ensure the success of your Snowflake deployment.
Enforcer of governance: Understand your organizational objectives and view on data governance, in order to assert its right use throughout all Snowflakes objects and roles.
Additionally, this person should be aware of Snowflakes features and release cycles, to determine how each feature might play a role in the current architecture. Is this feature going to hinder or enable our data users? Is this worth trying or a definitive no-go?
- Define governance principle into concrete actions
- Conduct periodical reviews of Snowflake's new features
- Study how other companies are implementing Snowflake
Mentor: Without claiming ownership of any data product, advise any data owner. From validating joins to enhancing performance. This person should be strong enough in the use of Snowflake and SQL to mentor less experienced developers.
- Weekly doctor sessions
- Open hours for data support
Janitor: Coach data owners, ensuring high quality data products throughout the organization.
- Proactively benchmark and test data products
- Create processes when data products break
4. Trusted Data
Quality Assurance: Ensure trust in the data products. Doing any action necessary to prevent the use of incorrect data.
- Keep documentation and data catalog up to date
- Promote the use of data tests and monitoring
- Help teams test data products before merging
Teacher: Directly responsible for the data literacy across the organization.
- Create educational content around data and Snowflake
- Organize period data literacy training for the workforce
- Help data users upskill with topics like best practices
The DBA: Oversee the administration of Snowflake. Ideally, the focus should be automation, instead of manual work.
- Automating access management and onboarding
- Tune warehouses
- Cost control
- Backup and data recovery
Guardian: Responsible for any monitoring tools or efforts. In most cases, it is upon this person to translate monitoring output into actions (e.g. contact the right stakeholder or fix something).
- Creating custom reports
- Add automatic alerts to existing reports
- Maintenace of monitoring tools
Evangelist: Keep the data users informed. Ideally, this person fosters a sense of community amongst the data users.
- Data Wiki or knowledge database
- Monthly newsletter
- Internal user groups
- Invite external speakers
Create a support team with, at least, 2 people to support the internal use of Snowflake at your organization.
The first person should be strong in stakeholder management and communication. This person will be responsible for all the human aspects of data. This list includes mentoring data users, provide support, and evangelize your company's data vision internally.
The second person should be strong in SQL, automation, and architecture. This person will automate most of the boring tasks, help users solve the edge cases, and help users apply the best practices.
Ideally, these people should not be placed in silos. It is important for the more technical counter parts to work with the more communicative profiles. In fact, if you work for a small company, you can consider hiring just one person who can take both roles.