← All Notes
Published · 28 July 2026

Small changes are rarely small

The size of a feature request rarely reflects the complexity behind it.

One of the first features I worked on after joining the team looked reassuringly small.

The request was simple: update an information box.

Reading the ticket, I expected a straightforward user interface change. During refinement, however, one of our senior developers paused the discussion.

The information box did not exist once.

It existed in more than twenty variants.

The feature had not changed.

My understanding of it had.

Until that meeting, I had assumed complexity would be visible in the backlog. Large features would look large. Small features would look small.

Software rarely behaves that way.

A small change on the surface may sit on top of years of accumulated decisions.

Those twenty variants did not appear overnight.

Each had solved a real problem at some point. A customer needed different behaviour. A regulation introduced another rule. A historical decision could not easily be removed.

None of those decisions were unreasonable.

Taken together, however, they created a system whose history was invisible to anyone reading the ticket for the first time.

That experience changed the way I estimate work.

Today, when a feature looks small, I become curious rather than optimistic.

How many versions already exist?

Why do they exist?

What assumptions have accumulated around this part of the product?

Those questions often tell me more about the effort involved than the ticket itself.

Software does not only accumulate code.

It accumulates decisions.

The size of a request tells us very little about the size of the system it touches.