Staff Software Engineer,

Who we are

About Stripe

Stripe is a financial infrastructure platform for businesses. Millions of companies—from the world’s largest enterprises to the most ambitious startups—use Stripe to accept payments, grow their revenue, and accelerate new business opportunities. Our mission is to increase the GDP of the internet, and we have a staggering amount of work ahead. That means you have an unprecedented opportunity to put the global economy within everyone’s reach while doing the most important work of your career.

About the team

In this role, you will be joining the High Availability and Disaster Recovery team. At Stripe, availability is a core feature of our products. This team designs and builds new solutions to allow latency-critical, stateful applications to survive any type of disaster. We build distributed systems on top of unreliable architecture to provide highly available and resilient customer solutions. This team is creating greenfield solutions which will serve as the basis for Stripe’s architecture 5, 10, or 20 years into the future.

This is a distributed team with many remote engineers. You are encouraged to apply if you meet the minimum requirements and are able to work from anywhere in the United States or Canada.

What you’ll do

You will help develop our global architecture by combining less-available components and data centers into a highly available and resilient whole. You will work on latency-critical solutions where every millisecond matters and data redundancy is a hard requirement. You will learn quickly and work on a broad range of problems - one day may be investigating Mongo write concerns, the next may be minimizing cross-region TLS handshakes, followed by developing new systems to automate disaster detection and failovers. Your work will enable Stripe to increase the GDP of the internet by providing uptime and data protection which have historically been impossible.

Responsibilities

  • Actively work with leaders and engineers across the company to understand and identify opportunities to improve Stripe’s reliability  posture
  • Scope, design, implement, and deploy robust distributed services, making appropriate tradeoffs between reliability, throughput, latency, resiliency, engineering velocity and cost
  • Innovate, design and implement new products and prototypes to improve service resiliency, engineering velocity and management at scale
  • Mentor and grow the next generation of technical leaders at Stripe
  • Contribute to engineering strategy, tooling, processes, and culture
  • Uphold our high engineering standards and improve our codebase and processes

Who you are

We’re looking for someone who meets the minimum requirements to be considered for the role. If you meet these requirements, you are encouraged to apply. The preferred qualifications are a bonus, not a requirement.

Minimum requirements

  • Have 10 years or more of distributed and cloud native software development experience at a highly-scaled or hyperscaler service
  • Have a deep understanding of how to build scalable, resilient, distributed systems, cloud native architectures, and mission critical systems.
  • Have experience influencing, planning, scoping, and leading large projects across many teams
  • Thrive in a collaborative environment involving diverse stakeholders and subject matter experts
  • Have a high level of autonomy and responsibility, and think of yourself as entrepreneurial, proactive and self-driven
  • Have a strong history of being a technical lead and mentor across several engineering teams

Hybrid work at Stripe

This role is available either in an office or a remote location (35+ miles or 56+ km from a Stripe office).

In-office expectations

Office-assigned Stripes spend at least 50% of the time in a given month in their local office or with users. This hits a balance between bringing people together for in-person collaboration and learning from each other, while supporting flexibility about how to do this in a way that makes sense for individuals and their teams.

Working remotely at Stripe

A remote location is defined as being 35 miles (56 kilometers) or more from one of our offices. While you would be welcome to come into the office for team/business meetings, on-sites, meet-ups, and events, our expectation is you would regularly work from home rather than a Stripe office. Stripe does not cover the cost of relocating to a remote location. We encourage you to apply for roles that match the location where you currently live or plan to live.

Pay and benefits

The annual US base salary range for this role is $224,000 - $336,000. For sales roles, the range provided is the role’s On Target Earnings ("OTE") range, meaning that the range includes both the sales commissions/sales bonuses target and annual base salary for the role. This salary range may be inclusive of several career levels at Stripe and will be narrowed during the interview process based on a number of factors, including the candidate’s experience, qualifications, and location. Applicants interested in this role and who are not located in the US may request the annual salary range for their location during the interview process.

Additional benefits for this role may include: equity, company bonus or sales commissions/bonuses; 401(k) plan; medical, dental, and vision benefits; and wellness stipends.

We look forward to hearing from you.

At Stripe, we're looking for people with passion, grit, and integrity. You're encouraged to apply even if your experience doesn't precisely match the job description. Your skills and passion will stand out—and set you apart—especially if your career has taken some extraordinary twists and turns. At Stripe, we welcome diverse perspectives and people who think rigorously and aren't afraid to challenge assumptions. Join us.

Apply now

Please find our California applicant personal information notice here.

The application window will remain open for 100 days after the Job Post is published. However, this opportunity will remain open based on the needs of the business, which may cause the application window to close before or after the 100-day mark.