What are Coinbase’s Engineering Principles?

Jesse Pollak

Over the last 3 years, the Coinbase engineering team has nearly tripled in size: from tens of engineers in the early 2016 to hundreds of engineers. At the same time, we’ve also increased the product surface area we are working across: from 1 product (Coinbase) to 6 distinct Coinbase products that are collectively building the cryptoeconomy.

As our team size and product scope has grown, we’ve observed a few challenges:

  1. As we’ve added more people, it’s becoming increasingly challenging to maintain consistency in culture across the entire engineering organization.
  2. As we’ve increased the number of products, we’ve seen a divergence in how different teams approach building their products (and choosing what to build vs. buy).
  3. As we’ve begun embarking on multi-year, multi-team engineering initiatives, we’ve seen variable outcomes across teams based on different sub-cultures.

Each of these challenges can be framed as “increased scale creates increased variability.” And, while we’ve seen that some diversity in approach is valuable, we’ve also seen that large inconsistencies undermine our ability to capture economies of scale. For example, if we’re building all of our products in different ways, we aren’t able to share tools/processes as effectively. Or, if we’re building all of our teams in different ways, we will have a harder time collaborating or changing what we’re working on. Or if we have different perspectives on what’s important, when we embark on a multi-year product across many teams, we’ll see different teams go in very different directions (or not prioritize the same initiatives).

There’s no perfect solution for these challenges — but Coinbase is an organization that prioritizes efficient execution, so we decided to step back and figure out how we could maximize the consistency in approach across our organization.

After talking through how best to solve this challenge, we decided on a two pronged approach. First, we would work as an organization to define a set of Engineering Principles that guide how we should work together. These principles would extend our company values and culture, applying them specifically to our engineering practice. Then, our senior leadership would work together to articulate a long-term strategy that outlines at a very high level what Coinbase’s engineering platform should look like in 2–4 years. With these two pieces, we’d have clear direction for where we want to be, but we’d be able to get there by empowering aligned decentralized decisions (rather than gating on top down decision making).

Based on these conversations, our formalized goals for creating Engineering Principles became:

  1. Foster a cohesive engineering approach across our heterogeneous set of products
  2. Enable productive, decentralized technical decisions
  3. Help new members of our team understand how we work and where we’re going

Over the last 3 months, we ran a process to create these principles and have ended up with six principles: #SecurityFirst, #BuildValue, #OneCoinbase, #ExplicitTradeoffs, #APIDriven, and #1–2-Automate. Our hope is that these principles serve as the thread that weaves all of our teams together and helps us chart a cohesive, aligned engineering approach in the years to come!

Author:

Source link

Related posts

12 Thoughts to “What are Coinbase’s Engineering Principles?”

  1. … [Trackback]

    […] Info on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  2. … [Trackback]

    […] Info on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  3. … [Trackback]

    […] Information to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  4. … [Trackback]

    […] Find More to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  5. … [Trackback]

    […] Read More here on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  6. … [Trackback]

    […] Read More Information here to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  7. … [Trackback]

    […] Here you will find 62018 more Information on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  8. … [Trackback]

    […] Info on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  9. … [Trackback]

    […] Read More to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  10. sbo

    … [Trackback]

    […] Find More on to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  11. … [Trackback]

    […] Read More here to that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

  12. … [Trackback]

    […] Read More Information here on that Topic: tradingbtc.com/2019/07/26/what-are-coinbases-engineering-principles/ […]

Leave a Comment