Senior Software Engineer, Foundational Storage

Sentry•Toronto, Ontario, Canada•Remote•($200,000 - $420,000)

About the Role

ABOUT SENTRY Software runs the world and the pace is faster than ever. Sentry helps developers fix errors and performance issues before users notice, so teams can spend less time firefighting and more time building. Trusted by 200,000+ organizations, Sentry is today’s application monitoring standard and our team is building its AI-native future. ABOUT THE ROLE Sentry’s Foundational Storage team builds and supports the stateful storage systems that all our products rely on: object storage, relational databases, key-value stores, and caches. We help Sentry engineers store and access data consistently, durably, securely, and efficiently as our products and traffic grow. We develop storage services like our open-source Objectstore https://github.com/getsentry/objectstore and build libraries and APIs that make existing storage systems easier to use. In our own services, we design storage protocols that keep data consistent across backends, even through concurrent updates and failures. Our abstractions let other engineering teams use storage without worrying about which cluster or instance holds their data. As a Senior Software Engineer on the team, you’ll work on both the systems and the code that makes them easy to use. You’ll tackle questions of data consistency, availability, performance, and cost-efficiency, and work with product teams to turn their needs into practical solutions. The goal is simple: make the right way to store data the easy and obvious way. IN THIS ROLE YOU WILL - Design and operate storage systems used across Sentry, including their configuration and performance tuning. - Create APIs and abstractions that make storage easy for product teams to use, with best practices for correctness, security, and scale built in. - Solve storage challenges at scale, including consistency under concurrent access, sharding and rebalancing, and routing reads and writes across storage backends as workloads grow. - Work with product engineers to choose storage approaches, plan safe migrations, and help teams adopt the tools you build. - Plan and build with other Platform and Infrastructure teams, including analytical storage and streaming, to deliver a complete, fault-tolerant platform for product teams. Align roadmaps and standards, and design for failures and recovery. - Improve storage performance and cost efficiency by making better use of backends and resources, while keeping the platform simple for product teams. - Write code primarily in Rust and Python, with clear user-facing documentation. Develop advanced testing scenarios, such as production-scale chaos tests covering backend and infrastructure outages. - Own latency and availability SLOs for your services, improve monitoring and incident response, and participate in the team’s on-call rotation. YOU’LL LOVE THIS JOB IF YOU - Enjoy digging into the internals of storage systems and understanding how they behave when traffic grows, requests race, or a dependency has a bad day. - Care about a useful, easy-to-use API as much as what happens behind it. - Like working with other engineers to understand their needs and make their day-to-day work easier. - Want to follow your work from design and code through rollout and production for millions of developers. - Want open-source contributions to be at the center of your day job. QUALIFICATIONS - 5+ years of software engineering experience building and operating distributed, stateful systems in production. - Hands-on experience with object storage, relational databases, and caching systems at production scale. Experience with key-value or wide-column stores is a plus. - An understanding of distributed systems fundamentals, including consistency, concurrency, and what happens when requests fail or need to be retried. - Proficiency in a systems language such as Go, C++, Java, or Rust, and comfort working in Python. We primarily use Rust and Python, and welcome engineers who are new to Rust. - Experience running services on Kubernetes in a cloud environment, including observability, SLOs, and incident response. Familiarity with Terraform is a plus. - Good written and spoken English, especially in explaining technical choices and writing documentation. - Nice to have: experience building shared libraries or internal APIs, migrating data between systems, or improving system performance and cost.   The base salary range (or hourly wage range, if applicable) that Sentry reasonably expects to pay for this position is $200,000 to $420,000 CAD. A successful candidate’s actual base salary (or hourly wage) amount will be determined by a variety of relevant factors including, without limitation, the candidate’s work location, education, work and other relevant experience, skills, and job-related knowledge. A successful candidate will be eligible to participate in Sentry’s employee benefit plans/programs applicable to the candidate’s position (including incentive compensation, equity grants, paid time off, and group health insurance coverage). See Sentry Benefits https://sentry.io/careers/ for more details about the Company’s benefit plans/programs. EQUAL OPPORTUNITY AT SENTRY Sentry is committed to providing equal employment opportunities to its employees and candidates for employment regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity, veteran status, or other legally-protected characteristic. This commitment includes the provision of reasonable accommodations to employees and candidates for employment with physical or mental disabilities who require such accommodations in order to (a) perform the essential functions of their jobs, or (b) seek employment with Sentry. We strive to build a diverse team, with an inclusive culture where every teammate can thrive. Sentry is an open-source company because we believe that everyone, everywhere, should have the ability and tools to make great software. Software should be accessible. That starts with making our industry accessible. If you need assistance or an accommodation due to a disability, you may contact us at accommodations@sentry.io. Want to learn more about how Sentry handles applicant data? Get the details in our Applicant Privacy Policy https://sentry.io/careers/applicantprivacy/.