Skip to content
[ aicodereview.io ]

Delivery & CI · Updated 2026-09-17

Shift left

Moving quality and security checks earlier in the development process, where problems are cheaper to find and fix.

What it is

Draw the delivery pipeline left to right — write, commit, review, merge, deploy — and “shift left” means moving a check toward the writing end. The reasoning is well established: the cost of fixing a defect rises sharply with how late it is found, mostly because of lost context rather than the fix itself.

What it looks like in practice

Type checking in the editor, formatting on save, security patterns in the IDE, dependency checks at install, review before merge rather than after release.

Why it is also the category’s favourite euphemism

Vendors use “shift left” to justify adding more checks earlier, which is not the same as moving checks earlier. There is a real limit: a developer’s attention is finite, and every check placed in front of them competes with the code they are writing. Shifting left works when it replaces a later check; it backfires when it simply adds one.

The useful version of the idea is about feedback timing, not check volume. Give the developer the finding while they still have the problem in their head, and give them fewer findings, not more.

Common mistakes

  • Adding IDE-time checks without removing the equivalent CI check, so violations are reported twice.
  • Shifting security scanning left without shifting the ability to fix it — findings a developer cannot action just relocate the bottleneck.
  • Measuring success by number of checks moved rather than by defects caught earlier.

[ Tools where this matters ]

[ Related terms ]

[ Read next ]

See which tools actually deliver this

Scored against 9 standards, with the source for every claim.

Open the directory [↗]