Build the future of data. Join the Snowflake team.
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 is a cutting-edge, highly scalable database capable of ACID transactions at high frequencies and low latencies. FDB has been a core component in Snowflake's unique shared-metadata architecture since 2014, making possible Snowflake's vision to build the greatest data warehouse for the cloud.
Within the overall FDB org, the FDB Platform team is responsible for building and operating a Control Plane that automatically manages thousands of stateful FDB clusters, with minimum human intervention. This control plane is a very important piece to some new strategic initiatives the company is investing heavily in, including the Snowflake Unistore product.
It’s non-trivial (and exciting!) to build a robust, reliable, and fully automated control plane for a large number of Stateful clusters, and for high impact business products. Typical challenges this team tackles include:
- 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
- Doing all above safely and reliably on stateful clusters without any data loss.
We are looking for an outstanding Senior Software Engineer with a passion for large scale databases, distributed systems and their control planes to help us take the FDB platform to the next level.
AS A SENIOR SOFTWARE ENGINEER ON THIS TEAM, YOU WILL:
- Design and implement scalable distributed system solutions for our cloud agnostic platform.
- Analyze fault-tolerance and high availability issues, performance and scale challenges, and solve them.
- Own the end to end delivery of your projects, from identifying a solution, to design, implementation, test and safe production rollout
- 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.
AN IDEAL CANDIDATE WILL HAVE:
- 5+ years industry experience designing, building and supporting large scale infrastructure in production.
- Experience designing, building, and operating large-scale distributed systems infrastructure and control planes 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 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:
About FoundationDB:
FoundationDB Summit 2018 and FoundationDB Summit 2019
How FDB powers Snowflake Metadata Forward!