raphting.dev

Your management style is not agile

Recently I had to participate in a so called “Sprint planning”. Sprints are part of a management style called Scrum. The wording will be important later.

The team lead in that meeting said “It is agile to do small steps”. What he meant was to keep the ticket scope small. Let’s have a look at the Principles behind the Agile Manifesto. Strange, “small steps” are nowhere mentioned, not even remotely. We are confronted with a pattern I see here and there. Someone invents (or interprets) a management style and lives with the illusion that the process is agile. This is what I would call “kitchen sink agility”.

The “small tickets” paradigm originates from a different namespace, namely management. It might be beneficial for managers to let developers work on small scoped tickets. It might be beneficial for managers to let developers do impossible predictions (story length) or measure imaginary things (story points). It might be beneficial for managers to let developers work in two week chunks (sprints) and compare velocity so that individual pressure raises (and unfortunately pressure and control is linked to a decrease in creativity - one of the main ingredients for developer productivity). Remember I talked about “Sprint planning” in the beginning? Not agile. The Agile Manifesto states “developers […] should be able to maintain a constant pace indefinitely”. Did you ever try or see someone trying to sprint indefinitely?

Scrum is heavily inspired by Lean Development. “Lean” basically means “don’t use your brain”. This is a great concept if you run a McDonald’s branch. There is no room for kitchen workers to think “Maybe I should add some pepper to this patty. Maybe it’s nice if the McFlurry comes with a pinch of real vanilla”. This is McDonald’s strength. Try the same in a Michelin star restaurant and you won’t be able to welcome guests for long. We can try to incorporate this same lean behaviour in software development. What you will get is software that behaves like nobody thought about it. We cannot accept Lean Development in an ever increasingly demanding profession. Nobody needs lean developers. We need developers who can think (I am not trying to be gatekeeping here about what “real developers” are. I want to emphasise that disencouraging developers to think about software engineering is counter productive).

What I want to say is: We developers have to focus on what we find important. We can’t afford to focus on the distraction (the kitchen sink agility). I can fully agree to the Agile Manifesto. Management should be able to support us developers in this effort, not contradict it.

By Raphael Sprenger licensed under CC BY-NC 4.0