• We manage the build pipeline that delivers Quip and Slack Canvas’s backend. • A year ago, we were chasing exciting ideas to help engineers ship better code, faster. • But we had one huge problem: builds took 60 minutes. • With a build that slow, the whole pipeline gets less agile, and feedback doesn’t come to engineers until far too late. • We fixed this problem by combining modern, high-performance build tooling (Bazel) with classic software engineering principles. • Here’s how we did it.

Article Summaries:

  • Quip and Slack Canvas reduced their backend build time from 60 minutes to a few minutes by overhauling their pipeline. The team adopted Bazel, a high‑performance build system, and treated the build as a directed acyclic graph of discrete units of work. They applied software engineering principles-caching hermetic, idempotent functions and parallelizing tasks-to avoid redundant work and spread load across compute resources. By storing expensive build results and maximizing cache hit rates, the pipeline became far more agile, delivering faster feedback to engineers and enabling quicker code releases.

Sources: