Skip to content
Tech News
← Back to articles

AI coding has made CI a bottleneck, so we reworked ours to keep up

read original more articles
Why This Matters

Linear's engineering team documents how AI-assisted coding has accelerated code output to the point where continuous integration (CI) has become the new bottleneck in software development, since every PR still requires validation regardless of how fast it was written. Their fixes—faster infrastructure, smarter job sequencing, and reduced redundant setup—offer a practical playbook for engineering teams facing similar CI strain as AI coding tools proliferate. This matters broadly because as agentic coding tools speed up code generation industry-wide, testing and validation infrastructure will need parallel innovation to avoid becoming a costly chokepoint.

Key Takeaways

Earlier this year, I opened Linear to find that Tuomas, our CTO, had assigned an issue to me, titled “CI costs are high.” While I was at it, he also wanted me to make CI faster.

Agents have made it exponentially faster to ship code, but validating those changes hasn’t quite kept up at the same rate. Every PR still has to pass through CI, so as development accelerates, CI becomes a bottleneck, driving up infrastructure costs and leaving developers and agents waiting longer for feedback.

In our pursuit to make CI more performant at Linear, we optimized for how long a PR waits on CI and how much runner time it consumes. Despite our test suites almost quadrupling since the start of the year, we brought pull request wait time down from more than 6 minutes to just over 5, while cutting runner time per test roughly in half.

This is test suite performance indexed to the first week of January. The white line, tracking machine time per test, spikes when we added test shards, which shorten the wait and costs more machine time, and again during checkout stalling issues

Broadly, we improved CI in four ways:

Upgraded infrastructure and tooling

Optimized the jobs that gate other work

Reduced repeated setup

Made test execution more efficient

Linear’s codebase is primarily TypeScript, but many of these optimizations apply across languages and toolchains.

... continue reading