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
Our Revenue and Finance Automation (RFA) suite gives businesses power over the entire life cycle of their cash flow. By coordinating billing, tax, reporting, and data services in one modern stack, Stripe’s revenue and finance automation suite eliminates the inefficiencies of legacy finance tools and supports revenue growth.
The User Accounting Platform team is building an enterprise grade accounting ledger for our users to facilitate recording of all financial activities on Stripe. The team focuses on building a high volume, fully configurable ledger that enables core accounting functionalities like Revenue Recognition & Reconciliation, thereby, enabling continuous accounting and timely book closure for Stripe merchants.
What you’ll do
As a full stack engineer, you will design and build platforms, and system solutions that are configurable and scalable around the globe. You will partner with many functions at Stripe, with the opportunity to both work on financial platform systems, as well as direct user-facing business impact.
Responsibilities
- Design, build, and maintain APIs, services, and systems across Stripe’s engineering teams.
- Partner with the Revenue Recognition, Revenue Reporting and Reconciliation Product teams to understand their unique requirements related to data and reporting, and provide tailored technical support accordingly.
- Work with engineers across the company to build new features at large-scale.
- Maintain a collaborative environment, engaging in discussions and decision-making processes with stakeholders within various domains at Stripe.
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
- 4+ years of experience in delivering, extending, and maintaining large scale distributed systems.
- Love to design systems that are elegant abstractions over complex patterns/practices, especially in the financial industry.
- Hold yourself and others to a high bar when working with production systems.
- Take pride in working on projects to successful completion involving a wide variety of technologies and systems.
- Think about systems, services, and platforms, and write high quality code. We work mostly in Java, Scala, and Ruby.
- However, languages can be learned: we care much more about your general engineering skill than knowledge of a particular language or framework.
- You have great product taste and a track record of taking complex problems and solving them elegantly.
- You are capable of working in ambiguous fast-moving environments and have a curiosity to learn the domain to a deep level.
- Enjoy working with a diverse group of people with different expertise.
Preferred qualifications
- Familiarity with large scale distributed systems.
- Experience working in high-growth teams similar to Stripe.
- If you meet the minimum requirements, we encourage you to apply. Preferred qualifications are beneficial but not mandatory.
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.