Software Engineer - Metadata

Snowflake

Berlin, Germany

#SNCOUS22D858F526004514A586D8C472644CF5EXTERNALENUSB095F8335E7247A9A44B6AFCBC18095A

Position summary

th 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.

Link to article about Metadata team
AS A SOFTWARE ENGINEER - METADATA, YOU WILL:

  • 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.

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.

OUR IDEAL SOFTWARE ENGINEER WILL HAVE:

  • 2+ years industry experience designing, building and supporting large scale systems in production.

  • Strong computer science fundamentals including data structures, algorithms, and optimally distributed systems.

  • Systems programming skills including multi-threading, concurrency, caching, etc. Fluency in Java (or other similar procedural object-oriented language) is preferred.

  • Broad experience with identifying and implementing creative solutions to real customer problems.

  • 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.

How do you want to make your impact?

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?