Engineering

Supporting Hypothesis

Sam Ritchie Engineering

At Stripe, we regularly contribute to open-source projects and rely on open-source software for developing many different parts of our stack. Stripe supported the development of Hypothesis, an open-source testing library for Python created by David MacIver. Hypothesis provides effective tooling for testing code for machine learning, a domain in which testing and correctness are notoriously difficult.

Read more 

Engineering

APIs as infrastructure: future-proofing Stripe with versioning

Brandur Leach API Experience

When it comes to APIs, change isn’t popular. While software developers are used to iterating quickly and often, API developers lose that flexibility as soon as even one user starts consuming their interface. Many of us are familiar with how the Unix operating system evolved. In 1994, <em>The Unix-Haters Handbook</em> was published containing a long list of missives about the software---everything from overly-cryptic command names that were optimized for Teletype machines, to irreversible file deletion, to unintuitive programs with far too many options. Over twenty years later, an overwhelming majority of these complaints are still valid even across the dozens of modern derivatives. Unix had become so widely used that changing its behavior would have challenging implications. For better or worse, it established a contract with its users that defined how Unix interfaces behave.

Read more 

Product

Marc Andreessen answers questions from Stripe Atlas founders

Patrick McKenzie Startup Marketing

Startups are a curious alchemy of people, knowledge, money, and technology. Access to these building blocks has historically been grossly uneven, but is improving over time. Open-source software and cloud services have made the core infrastructure of technology companies easier and cheaper to build than ever before. The internet has collected and distributed a growing body of practice for the practical know-how of how to build and scale companies.

Read more 

Engineering

Connect: behind the front-end experience

We recently released a new and improved version of Connect, our suite of tools designed for platforms and marketplaces. Stripe’s design team works hard to create unique landing pages that tell a story for our major products. For this release, we designed Connect’s landing page to reflect its intricate, cutting-edge capabilities while keeping things light and simple on the surface.

In this blog post, we’ll describe how we used several next-generation web technologies to bring Connect to life, and walk through some of the finer technical details (and excitement!) on our front-end journey.

Read more 

Product

Improving Connect to enable more platforms

Jorge Ortiz Account Infrastructure

Managing payments for marketplaces and platforms is harder than for most other businesses: not only do these businesses have to accept money from customers, but they also need to handle funds and pay out to third parties. Adding further complication, paying out money means doing things like checking recipient IDs, reporting taxable income, and a whole host of new tasks.

Read more 

Product

New roles and permissions in the Dashboard

Aaron Forsander Corporate Card

Today, we’re updating our support for team roles in the Dashboard: we’ve made what’s there clearer and we’re also adding two new roles. If you haven't seen this part of the Dashboard before, we support you giving as many team members as you like access to your Stripe account. When we first added teams and roles to Stripe, we only provided three access levels: administrator, read and write, and read-only. We’ve heard feedback that different job functions need a more distinct set of permissions when accessing Stripe accounts.

Read more 

Corporate

Introducing Increment

Will Larson Engineering

As software becomes more important in the world, the practice and art of software is becoming more important too. A lot has been written about how individual engineers can be more effective. We've noticed that much less has been written about how software engineering teams can be more effective.

Read more 

Corporate

Introducing Increment

Will Larson Engineering

As software becomes more important in the world, the practice and art of software is becoming more important too. A lot has been written about how individual engineers can be more effective. We've noticed that much less has been written about how software engineering teams can be more effective.

Read more 

Product

Making it even easier to start an internet business with Stripe Atlas

Taylor Francis Startup Marketing

Just over a year ago, we launched Stripe Atlas, a new way to start an internet business. It was something of an experiment to begin with, but the response has been hugely encouraging. Since we announced Atlas, thousands of entrepreneurs from 124 countries have used Atlas to start their company. Atlas companies are building everything you could imagine, including a deployment platform in California, a presentation tool in Chile, and a cosmetics startup in the Gaza Strip.

Read more 

Engineering

Scaling your API with rate limiters

Paul Tarjan Engineering

Availability and reliability are paramount for all web applications and APIs. If you’re providing an API, chances are you’ve already experienced sudden increases in traffic that affect the quality of your service, potentially even leading to a service outage for all your users.

The first few times this happens, it’s reasonable to just add more capacity to your infrastructure to accommodate user growth. However, when you’re running a production API, not only do you have to make it robust with techniques like idempotency, you also need to build for scale and ensure that one bad actor can’t accidentally or deliberately affect its availability.

Read more 

Corporate

Celebrating Female Entrepreneurs

Aylin Oncel Community Engagement

We built Stripe Atlas to help entrepreneurs from all over the globe start and run an internet business, no matter which industry they're in, where they're based, or their gender or ethnicity. However, women are still not starting companies or raising money at nearly the same rate as men—women made up only 7% of founders whose companies received more than $20M in VC funding between 2009 and 2015. We believe that a more diverse entrepreneurial ecosystem leads to better products and services for everyone.

Read more 

Engineering

Designing robust and predictable APIs with idempotency

Brandur Leach API Experience

The networks connecting our servers are, on average, more reliable than consumer-level last miles like cellular or home ISPs, but given enough information moving across the wire, they’re still going to fail in exotic ways. Outages, routing problems, and other intermittent failures may be statistically unusual on the whole, but still bound to be happening all the time at some ambient background rate.

To overcome this sort of inherently unreliable environment, it’s important to design APIs and clients that will be robust in the event of failure, and will predictably bring a complex integration to a consistent state despite them. Let’s take a look at a few ways to do that.

Read more 

Engineering

Online migrations at scale

Engineering teams face a common challenge when building software: they eventually need to redesign the data models they use to support clean abstractions and more complex features. In production environments, this might mean migrating millions of active objects and refactoring thousands of lines of code.

Stripe users expect availability and consistency from our API. This means that when we do migrations, we need to be extra careful: objects stored in our systems need to have accurate values, and Stripe’s services need to remain available at all times.

In this post, we’ll explain how we safely did one large migration of our hundreds of millions of Subscriptions objects.

Read more 
Prev
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
Next

Like this post? Join our team.

Stripe builds financial tools and economic infrastructure for the internet.

Have any feedback or questions?

We’d love to hear from you.