Rework
Emily Fueger avatar
Written by Emily Fueger
Updated over a week ago

Percentage of code changes in which an engineer rewrites code that recently updated (at any time within the past three weeks). This metric is calculated in lines of code and includes rework that's a natural and expected part of the process (e.g., if you push a commit and then subsequently make another commit in that same line of code, it affects Rework whether or not its in the same PR). 

Notes: this metric does not include merge commits. Rework is calculated when commits are pushed.

Why it matters: Rework, also known as code churn, represents efficiency at the coding level (whereas Pull Request Success represents efficiency at the pull request level). High rework indicates wasted efforts that are both, slowing productivity and frustrating engineers. 

How to use it: Rework will vary contributor by contributor, depending on the nature of their work and their experience level. Look out for high Rework across the entire organization or for cases where the rework of the individual is elevated relative to their typical number. High Rework can be a sign of late changing product requirements, unclear technical direction, or lack of familiarity with the codebase. 

Benchmarks: Top performing engineering organizations keep their Rework to less than 4%.

Did this answer your question?