Build the future of the AI Data Cloud. Join the Snowflake team.
A massive new market opportunity is being created at the intersection of Cloud and Data, and the Snowflake Data Cloud is leading the way, all powered by the database engine we are building from the ground up.
Key to Snowflake’s Database Engine is our large scale distributed transactional Key-Value store - called FDB - which powers all of Snowflake’s products and services and is rapidly evolving to meet Snowflake’s future needs.
FDB runs on multiple cloud providers including Amazon Web Services, Microsoft Azure and Google Cloud. The elastic infrastructure FDB runs on is being built from the ground up and is envisioned to be a cloud agnostic, fully automated manageability platform that provides:
Autoscaling and auto-balancing of clusters based on utilization, traffic and workloads
Auto-provisioning of new clusters with zero manual intervention
Self-healing capabilities that prevent, mitigate and resolve any production impact
Built-in configuration management that guarantees FDB runs correctly and on the intended topologies
Self-optimizing COGS efficiency, ensuring we run our clusters at optimal utilization
We are looking for an outstanding Principal Software Engineer with a passion for large scale databases and distributed systems to help us take the FDB platform to the next level.
AS A PRINCIPAL SOFTWARE ENGINEER ON THIS TEAM, YOU WILL:Lead a team responsible for the health and growth of the FDB platform service at Snowflake
Design and implement scalable distributed system solutions for our cloud agnostic platform, with features including
Auto-provisioning, Auto-scaling and auto-balancing clusters based on utilization and workloads
Self-healing capabilities that prevent, mitigate and resolve any production impact
Built-in cluster configuration management with release automation
Analyze fault-tolerance and high availability issues, performance and scale challenges, and solve them.
Own the end to end health and growth of the FDB platform, including identifying the right problems to solve, the solution, design, implementation, as well as testing strategy, safe production rollout and stability.
Understand trade-offs between consistency, durability and costs to build solutions which can meet the demands of rapidly growing services.
Build the next generation transaction system, caching, storage engine and multi tenant capabilities
Evangelize best practices in database usage and end-to-end architecture.
Pinpoint problems, instrument relevant components as needed, and ultimately implement solutions.
Mentor and grow engineers.
AN IDEAL CANDIDATE WILL HAVE:10+ years industry experience designing, building and supporting large scale infrastructure in production.
Experience designing, building, and operating large-scale distributed systems supporting stateful services
Experience in container orchestration, cluster management, or autoscaling.
Excellent understanding of operating systems concepts including multi-threading, memory management, networking and storage, performance and scale.
Systems programming skills including multi-threading, concurrency, etc. Fluency in Java, C++, or C is preferred.
Solid understanding of the internals of Kubernetes, Mesos, OpenShift, or other container platforms
Experience with scalable Key-Value stores such as FoundationDB, RocksDB/LevelDB, DynamoDB, Redis, etc. a plus.
Track record of leading and delivering highly complex projects in the distributed systems space
Intense curiosity, willingness to question and passion for making systems better
Experience with one or more of the following highly desired:
Big Data storage technologies and their applications (HDFS, Cassandra, Columnar Databases, etc.)
Scalable Key-Value stores such as FoundationDB, RocksDB/LevelDB, DynamoDB, Redis, Cassandra, etc.
BS in Computer Science; Masters or PhD Preferred.
About Snowflake:
Snowflake SIGMOD 2016 paper
About FoundationDB:
FDB SIGMOD 21 Paper
FoundationDB Summit 2018 and FoundationDB Summit 2019
How FDB powers Snowflake Metadata Forward!
Every Snowflake employee is expected to follow the company’s confidentiality and security standards for handling sensitive data. Snowflake employees must abide by the company’s data security plan as an essential part of their duties. It is every employee's duty to keep customer information secure and confidential.
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.
How do you want to make your impact?
The following represents the expected range of compensation for this role: The estimated base salary range for this role is .Additionally, this role is eligible to participate in Snowflake’s bonus and equity plan.
The successful candidate’s starting salary will be determined based on permissible, non-discriminatory factors such as skills, experience, and geographic location. This role is also eligible for a competitive benefits package that includes: medical, dental, vision, life, and disability insurance; 401(k) retirement plan; flexible spending & health savings account; at least 12 paid holidays; paid time off; parental leave; employee assistance program; and other company benefits.
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.
How do you want to make your impact?