Staff Software Engineer
Design and implement query optimization and distributed data processing algorithms for Snowflake's petabyte-scale cloud database. Own end-to-end delivery of large-scale systems projects and mentor junior engineers.
About the job
Responsibilities
- Design and implement novel query optimization or distributed data processing algorithms to maintain Snowflake's industry-leading data warehousing capabilities.
- Design, develop, and support a petabyte-scale cloud database system, ensuring it is highly parallel and fault-tolerant.
- Develop and implement the new service architecture required to enable the next generation of the Snowflake Data Cloud.
- Analyze, understand, and resolve complex performance and scalability bottlenecks within the system.
- Own the end-to-end delivery of projects, including identifying solutions, design, implementation, rigorous testing, and safe production rollout.
- Ensure operational readiness and execute production operations of services, meeting customer commitments for durability, availability, and performance.
- Build high-quality, highly reliable software that meets the demands of the world's largest companies.
- Develop tools to provide customers with greater insight into their workloads.
- Evangelize best practices for database usage and end-to-end system architecture.
- Mentor and support the professional growth of junior engineers on the team.
Requirements
- 10+ years of industry experience working on commercial or open-source software.
- Strong fluency in Java or C++.
- Excellent problem-solving skills and a deep understanding of Computer Science fundamentals, including data structures, algorithms, and distributed systems.
- Strong systems programming skills, including experience with multi-threading and concurrency.
- A solid foundation in distributed systems concepts (e.g., consistency, scaling, failure recovery).
- Experience with implementation testing, debugging, and documentation, specifically within a Linux development environment.
- Bachelor’s degree or foreign equivalent in Computer Science, Software Engineering, or a related field.
Nice-to-Haves
- SQL or other database technologies including internal design and implementation.
- Query optimization, query execution, compiler design and implementation.
- Experience with internals of distributed key value stores like FoundationDB and storage engines like RocksDB, InnoDB, BerkeleyDB etc.
- Experience with MySQL, PostgreSQL internals.
- Data warehouse design, database systems, and large-scale data processing solutions like Hadoop and Spark.
- Experience in database replication technology.
- Big data storage technologies and their applications, e.g., HDFS, Cassandra, Columnar Databases, etc.
Skills
Java, C++, Distributed Systems, Multi-Threading, Concurrency, Query Optimization, SQL, Database Internals, Linux, Data Structures, Algorithms
Similar jobs
Backend Engineering jobsStaff Software Engineer on Snowflake’s Snowtrail team, designing and operating query-processing and distributed infrastructure that improves engineering velocity and production quality. Requires expertise in databases, query optimization, compiler implementation, and large-scale systems.
Leads the design and implementation of scalable distributed data pipelines and related infrastructure, while improving performance, reliability, and security. Requires 5+ years of software experience, systems programming expertise, cloud and containerization experience, and senior staff-level technical leadership.
Leads performance engineering for high-volume data systems by diagnosing bottlenecks, designing improvements, and building resilient performance platforms. Requires 10+ years of software experience, strong Java and database expertise, and experience with distributed backend systems.
Staff Engineer responsible for the long-term technical health and strategic direction of Carta’s Middle Office domain, including distributed systems, architecture, reliability, and AI-enabled engineering practices. Requires 10+ years of software engineering experience and demonstrated technical leadership across teams.
Staff Software Engineer leading backend and data-intensive systems, including scalable services, AI-powered workflows, cloud infrastructure, and reliability initiatives. Requires 8+ years of software engineering experience and expertise in distributed systems, data processing, and containerized applications.