Staff Software Engineer, Metadata
Snowflake
Job Overview
Who's the hiring manager?
Sign up to PitchMeAI to discover the hiring manager's details for this job. We will also write them an intro email for you.

Job Description
About Snowflake
Snowflake is about empowering enterprises to achieve their full potential — and people too. With a culture that’s all in on impact, innovation, and collaboration, Snowflake is the sweet spot for building big, moving fast, and taking technology — and careers — to the next level.
The Opportunity: Staff Software Engineer, Metadata
Imagine you are part of a team of talented software engineers to shape the future of Snowflake’s Data Cloud. We’re looking for talented and driven software engineers that are passionate about pushing the boundaries of speed and scale. We keep a high bar in engineering as we want to release new versions of Snowflake at fast cadence to all our customers across the globe.
If this resonates with you, read on and apply!
Our Mission
Our mission is to provide low-latency and highly consistent access to Snowflake’s metadata in a secure way. We keep data safe through geo replication and offer immutable snapshots over long periods of time. Most prominently, we build high-scale APIs that power different types of workload from analytics warehouse and Unistore up to AI and container functions. Almost any internal service interfaces with Metadata APIs. Therefore, our services run at a large scale, supporting trillions of requests per day. Additionally, we own the representation of Metadata to users through the means of Infoschema, SHOW commands and Snowflake APIs.
What You Will Do
- Solve real business needs at large scale by applying your software engineering and analytical problem solving skills.
- Build the next-generation transaction system, storage engine and multi-tenant database system.
- Design, develop, and support a highly-parallel and fault-tolerant database system including a decentralized caching system of terabytes of metadata.
- Design and implement critical high-performance systems to handle the ever growing request rate of our database.
- Design and implement core infrastructure features including APIs, DDL transactions and logs as well as advanced features built on top of the metadata, such as cloning, time travel, snapshots and replication.
- Analyze and understand performance and scalability bottlenecks in the system and solve them.
- Have the opportunity to work on various background services that power Snowflake's proprietary multi-level metadata system to support fast compilation and query optimization.
- Ensure operational readiness of the services and meet the commitments to our customers regarding availability and performance.
What We Are Looking For
We are looking for strong system engineers who are interested in solving some of the most challenging problems in distributed systems, performance and scalability, and passionate about building system software with high quality.
- 10+ years industry experience designing, building and supporting large scale systems in production.
- Strong computer science fundamentals including data structures, algorithms, and distributed systems.
- Systems programming skills including multi-threading, concurrency, caching, etc. Fluency in Java (or other similar procedural object-oriented language) is preferred.
- Track record of identifying and implementing creative solutions.
- Knowledge of database internals is a big plus.
- BS in Computer Science; Masters or PhD Preferred.
Snowflake is growing fast, and we’re scaling our team to help enable and accelerate our growth. We are looking for people who share our values, challenge ordinary thinking, and push the pace of innovation while building a future for themselves and Snowflake.
Key skills/competency
- Distributed Systems
- Metadata Management
- Large Scale Systems
- Database Internals
- Java Programming
- System Design
- Scalability
- Performance Optimization
- Fault Tolerance
- Concurrency
How to Get Hired at Snowflake
- Research Snowflake's culture: Study their mission, values, recent news, and employee testimonials on LinkedIn and Glassdoor.
- Tailor your resume: Highlight extensive experience in distributed systems, database internals, and large-scale Java development.
- Showcase problem-solving: Prepare examples demonstrating analytical skills in resolving complex system challenges and bottlenecks.
- Master technical fundamentals: Deeply review data structures, algorithms, concurrency, and advanced system design principles.
- Understand metadata's role: Demonstrate knowledge of metadata systems' critical impact on large-scale data platforms.
Frequently Asked Questions
Find answers to common questions about this job opportunity
Explore similar opportunities that match your background