Software Engineer, Developer Infrastructure

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

The Developer Productivity group is responsible for making Stripe’s developers happy and productive. We work on tools, processes, and code refactoring to accelerate Stripe engineering as Stripe scales.

The ideal applicant will have familiarity with managing large-scale distributed compute infrastructure, tools such as Docker, ECR, Bazel and Firecracker, and a pragmatic approach to iterative problem-solving. Above all, they should be driven by a desire to continuously improve the development process for their fellow engineers.

You’ll collaborate closely with partner teams in Europe, such as CI Infra and CI Services, Test Environments and Frameworks, as well as partner teams based in the US who provide language specific tooling for Engineers who develop in any of Stripe’s supported languages (Ruby, Java, golang, python and more).

What you’ll do

We have a ton of important work to do, which is why we’re hiring! Our active projects change all the time, but here are a few examples of recent projects so you can get an idea of the types of work we do:

  • Improve the reliability, performance and efficiency of Stripe’s multi-region CI platform. If you like thinking about distributed systems, identifying and addressing scaling issues and failure modes, you might find a good home on this team!
  • If you love helping developers be more effective at their jobs, we have a ton of interesting projects around improving build reproducibility and performance using Bazel and related tools, both in a CI context and also in the inner development loop as engineers iterate on bug fixes or new capabilities.
  • Enhance the reliability, speed and efficiency of our largest builds. One of the key ways to execute builds efficiently is to bake incrementality into every aspect of the build process. We have accomplished a significant amount in this area, but have a long way to go!
  • Enhance the ability for Engineers to test new workflows on their local machines, and in CI.

Responsibilities

  • Build large scale distributed systems, tools and libraries that serve as the interface to data infrastructure for all of Stripe’s engineering teams
  • Maintaining and evolving existing distributed, and local, services.
  • Collaborating with engineers on the team, as well as cross-functional stakeholders, to develop prototype solutions for domains which are underserved by existing tooling.
  • Design, build, and maintain distributed cloud infrastructure services
  • Participate in roadmap planning and prioritization. Stripe is an Engineer driven organization, and leans heavily on the expertise of each engineer team to build the roadmap for the future.

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

  • 3+ years of professional, full-time software development experience
  • Experience designing, developing, maintaining and debugging distributed systems built with open source tools
  • Experience building tools to improve developer productivity, and empathy for the end users
  • Experience writing high quality code in a major programming language, preferably golang, Ruby or Java.

Preferred qualifications

  • Experience optimizing the end to end performance and reliability of distributed Systems
  • Proficiency in either golang or Ruby.
  • Familiarity with data privacy best practices
  • Excellent communication skills and the ability to work well in a collaborative environment
  • Experience mentoring and leading other engineers is a plus

In-office expectations

Office-assigned Stripes in most of our locations are currently expected to spend at least 50% of the time in a given month in their local office or with users. This expectation may vary depending on role, team and location. For example, Stripes in our Bucharest, Romania site have an 80% in-office expectation, and those in Stripe Delivery Center roles in Mexico City, Mexico and Bengaluru, India work 100% from the office. Also, some teams have greater in-office attendance requirements, to appropriately support our users and workflows, which the hiring manager will discuss. This approach helps strike a balance between bringing people together for in-person collaboration and learning from each other, while supporting flexibility when possible.

Pay and benefits

Stripe does not yet include pay ranges in job postings in every country. Stripe strongly values pay transparency and is working toward pay transparency globally.

Office locations

Bucharest

Team

Infrastructure & Corporate Tech

Job type

Full time

Please find our EU applicant personal information notice here.

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.