Skip to content
mimi

Principal Software Engineer - Metadata

Snowflake

On-site Lead Yesterday

About the role

About Snowflake

At Snowflake, we are powering the era of the agentic enterprise. To usher in this new era, we seek AI‑native thinkers across every function who are energized by the opportunity to reinvent how they work. You don’t just use tools; you possess an innate curiosity, treating AI as a high‑trust collaborator that is core to how you solve problems and accelerate your impact. We look for low‑ego individuals who thrive in dynamic and fast‑moving environments and move with an experimental mindset — who rapidly test emerging capabilities to discover simpler, more powerful ways to deliver results. At Snowflake, your role isn't just to execute a function, but to help redefine the future of how work gets done.

About the Job

Build the future of the AI Data Cloud. Join the Snowflake team.

Snowflake Metadata team builds a scalable metadata system that allows Snowflake to query across petabyte‑scale data efficiently. The team develops distributed and multi‑layered caches, transaction frameworks, declarative entity management, time travel and other core Snowflake services. It is also responsible for providing the foundation of global features like cross‑region replication, data sharing, and data marketplace.

AS A PRINCIPAL SOFTWARE ENGINEER - METADATA, YOU WILL:

  • Solve real business needs at large scale by applying your software engineering and analytical problem‑solving skills.
  • Create architecture and design, influence our product roadmap, and take ownership and responsibility over new projects.
  • Design, develop, and support a highly‑parallel and fault‑tolerant database system including a decentralized caching system of terabytes of metadata with an ever‑growing request rate.
  • Design and implement core foundational features including transactions, DDL/DML logs, metadata API as well as advanced features built on top of the metadata, such as declarative entity management and integrations to support developer toolchains.
  • Analyze and understand performance and scalability bottlenecks in the system and solve them.
  • Ensure operational readiness of the services and meet the commitments to our customers regarding availability and performance.

OUR IDEAL PRINCIPAL SOFTWARE ENGINEER WILL HAVE:

  • 14+ years industry experience designing, building and supporting large scale systems in production.
  • Strong computer science fundamentals including data structures, algorithms, and distributed systems.
  • Sharp original thinking to make the right choices and guide teams.
  • 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 to complex problems.
  • Knowledge of database internals is a big plus.
  • Ability to work effectively across engineering teams in multiple locations.
  • BS in Computer Science; Masters or PhD Preferred.

Additional Information

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?

For jobs located in the United States, please visit the job posting on the Snowflake Careers Site for salary and benefits information: careers.snowflake.com

Requirements

  • 14+ years industry experience designing, building and supporting large scale systems in production.
  • Strong computer science fundamentals including data structures, algorithms, and distributed systems.
  • Sharp original thinking to make the right choices and guide teams
  • Systems programming skills including multi-threading, concurrency, caching, etc.
  • Track record of identifying and implementing creative solutions to complex problems.
  • Ability to work effectively across engineering teams in multiple locations

Responsibilities

  • Solve real business needs at large scale by applying your software engineering and analytical problem solving skills.
  • Create architecture and design, influence our product roadmap, and take ownership and responsibility over new projects.
  • Design, develop, and support a highly-parallel and fault-tolerant database system including a decentralized caching system of terabytes of metadata with an ever growing request rate.
  • Design and implement core foundational features including transactions, DDL/DML logs, metadata API as well as advanced features built on top of the metadata, such as declarative entity management and integrations to support developer toolchains.
  • Analyze and understand performance and scalability bottlenecks in the system and solve them.
  • Ensure operational readiness of the services and meet the commitments to our customers regarding availability and performance.

Skills

Java

Don't send a generic resume

Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.

Get started free