jobapplier

Senior Software Engineer (Foundational Storage)

Sentry

Skills

Required

  • Go / C++ / Java / Rust
  • Python
  • running services
  • Kubernetes
  • cloud environment
  • observability
  • SLOs
  • incident response
  • Terraform
  • software engineering
  • rollout

Preferred

  • configuration
  • performance tuning
  • Create APIs and abstractions
  • routing

Join Sentry as a Senior Software Engineer, where you'll design and operate storage systems, create user-friendly APIs, and tackle storage challenges at scale. You'll work closely with product teams, improve storage performance and cost efficiency, and write code primarily in Rust and Python. Enjoy competitive compensation, benefits, and the opportunity to make a significant impact on millions of developers.

Want open-source contributions to be at the center of your day job

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

Responsibilities

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

Requirements

  • 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
  • 5+ years of software engineering experience building and operating distributed, stateful systems in production
  • Want to follow your work from design and code through rollout and production for millions of developers
  • Good written and spoken English, especially in explaining technical choices and writing documentation
  • 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
  • An understanding of distributed systems fundamentals, including consistency, concurrency, and what happens when requests fail or need to be retried
  • Nice to have: experience building shared libraries or internal APIs, migrating data between systems, or improving system performance and cost
  • 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