Here’s Why Many Developers Hate Scrum
Image by PDPics from Pixabay

Here’s Why Many Developers Hate Scrum

And?what?you can learn from this

Scrum is a disruptive framework. Complex environments need a different approach to building products, taking small steps and inspecting and adapting regularly. 36 years after its inception, it still causes confusion and frustration. Many have written books and articles to explain Scrum where they focus on how the framework works, the roles and the Scrum Values.

This information hasn’t convinced all developers. Some see Scrum as a burden and “just want to code”. In this article, I am going to show you why they have a point and what you can learn from their issues.

“Just let me code!” — A common response of a developer to the burdens of Scrum

Scrum comes with a lot of new responsibilities

Many embrace Scrum because it empowers the people who create the product. The Developers manage their capacity and control how it builds an Increment. The team also determines when Product Backlog Items are “Done”.?In Scrum, no one can tell them to cut corners on quality.

But with?autonomy?comes responsibility.?In Scrum, developer responsibility comes in spades. Look at the?list of responsibilities for the developers beyond building the product:

  • At the Sprint Planning — Determining a Sprint Goal, in collaboration with the Product Owner.?The developers need to assess if they can meet the Sprint Goal as this drives the Sprint;
  • At the Sprint Planning — Creating a Sprint Backlog.?Selecting the Product Backlog Items that help meet the Sprint Goal and creating a plan to deliver them.
  • During the Sprint — Ensuring the Product Backlog Items meet the Definition of “Done” and acceptance criteria.
  • During the Sprint — Making sure the Sprint Backlog always shows the current state of the progress on the Product Backlog Items and the plan for the Sprint.
  • At the Daily Scrum — Assessing the progress towards the Sprint Goal. This includes updating the plan as reflected in the Sprint Backlog.
  • At the Sprint Review — Discussing the Sprint Goal and how they managed to reach it.
  • At the Sprint Review — Showing what they created and answering questions.
  • At the Sprint Review — Taking part in the discussion of what to do next.
  • At the Sprint Retrospective — Inspect how the Sprint went?and?create an improvement plan.
  • Creating and maintaining the Definition of “Done”.
  • Learning, exploring, and embodying the Scrum Values of Courage, Commitment, Focus, Openness, and Respect.

This is a long list.

Autonomy has its flipside. It comes with responsibilities, and responsibilities come with a price.


New responsibilities cost time

For many that used to work in a traditional project-managed environment, these are new responsibilities. It is extra work on top of building valuable products.?Work that used to be part of the Project Manager function is now for them.?If this isn’t recognized, then this work will eat away time from actually building the product.

It is truly painful for developers that have worked with Scrum for years but never realised the extent of their new responsibilities straining them.

Worst off are the developers that know about the work that comes with self-management, but don’t see ways to alleviate their pain due to expectations from outside the team.

Developers need to adapt to the responsibilities that come with Scrum.

Here is the solution

When teams realize the impact of the responsibilities of being a self-managing Scrum Team, the path is clear for a solution.?The developers should either get the additional capacity to do this work?OR they should reduce their expectations of what they can deliver.

It would be logical to go for the first option though. Someone —like a Project Manager?— used to do the work that now is part of the developers' responsibilities. There used to be capacity for this. Hence the logical solution is to move this capacity to the developers, adding someone to the team.

There are several ways to add capacity to the developers:

  • The team gets one more person who can help build the product. The whole team divides the extra work between them.
  • If no one currently is capable of doing this type of work, someone with specific skills can join the team. Until now, they didn’t have all skills to do the work in a Sprint.?Planning and admin are work too. If a project manager used to do this work, perhaps she/he can continue to do so as part of the developers.
  • The Scrum Master could step in. However, it is important to separate the true Scrum Master role from this work that involves a lot of planning and administration. This is why I don’t like this solution. Many already confuse a Scrum Master with an admin.
  • A Product Owner could do the work. But there’s a catch here too.?The Product Owner should not limit the developers from self-managing.?When a Product Owner isn’t part of the developers, the autonomy of the developers can be under pressure with this solution.

Whatever choice the team makes, it should be clear that the person doing this Scrum-related additional work is equal to the rest of the Scrum Team (Product Owner, Scrum Master, Developers). She or he also does work that helps to create valuable products.

If there is no way to add capacity to the team, then the only logical solution is to?expect less from them and plan less.?Some managers might consider this somehow strange. But the work also existed when Scrum was not around, although it wasn’t with the team. And with moving the responsibility there should also be a change in capacity.

Scrum does come with additional investment and responsibilities

When teams work with the Scrum framework, they need to self-manage.?Self-management comes with responsibilities. If Scrum Teams fail to embrace these responsibilities — ignoring them or doing them half-heartedly —, Scrum will not be effective for them.

The same is true when Scrum Teams are forced to do this work on top of building products without the additional capacity to do it properly. This is not sustainable and will lead to disgruntled colleagues who despise Scrum and “just want to code”.

A self-managing Scrum Team needs to?commit to Scrum to make it work.?Responsibilities that used to be outside of the team, are for the team now.?With additional responsibilities, leading to additional work, there should be additional capacity.?There are several ways to add additional capacity to the team. The work needed to function as a self-managing Scrum Team is just as valuable as building the product. It is an essential piece of the Scrum puzzle to create high-value products.

Disruption and additional responsibilities doesn't need to make people hate an approach. Scrum is a product for developers. Developers are one of the customers of Scrum. The only reason to do an analysis of why customers hate your product is to improve your product. But Scrum has changed little in the 20 years it has become popular even though the attitude of people toward it and the systemic problems it has had for 20 years haven't changed much. What is any of the Scrum organizations (org, inc, alliance) doing to improve the product instead of explaining why so many of its customers have problems with it.

回复
Joe Douglass

3x Emmy-Nominated Producer & Legal Storyteller @ ClearEyedMedia.com | Investigative Reporting | Agile Project Management

2 年

So many organizations just slap the scrum label on top of waterfall practices it’s likely many team members hate that framework and not actual scrum. Upper-level management has to buy in for scrum to work as intended.

Ilja Vishnevski

Organisational Coach and Consultant | Team Coach | Dependency Breaker | Professional Coach (ICF-ACC) |?Serious Gamer | Climate Fresker

2 年

There is no doubt that self-management has its costs. However, in my experience that's not the reason why developers "hate Scrum". The "additional investment" you list are mostly about ensuring transparency, and developers usually know or quickly see that it pays off. In fact, good developers know that you can ditch Scrum, but you cannot stop investing in good collaboration practices - planning together, aligning direction, unblocking each other, aligning quality standards, inspecting and adapting. In my experience, developers become disillusioned with Scrum for other reasons. Here are two that jump to mind. - Scrum is often just a fig leaf. Too often it is "installed" on top of whatever mess has been there before. So teams are asked to "self-manage" a mess that's beyond their control: lack of strategy, years of technical debt, dependencies due to outdated architecture, bad org culture. Scrum is sold as a solution, but it won't fix your mess. - Scrum is often introduced in ways that are perceived as arrogant, and many developers despise arrogance. "Hey, team of experts that has been working together for years - here's the new guy who will teach you about Courage, Commitment, Focus, Openness, and Respect". Really?

Ivan Darmawan

Scrum Organization Craftsman | Trainer

2 年

I will let my developers just code, if I can make business from just coding.

Stephen Clarke

Head of Agile CoP, Project Manager and Agile Coach

2 年

The biggest trap I see a lot of scrum masters fall into is failing to recognise that the scrum framework is also incremental. It takes time to create a team, never mind a self managing one. Forming scrum teams needs lots of management and vision setting and understanding, so not leaving the devs to self manage in early sprints rarely works. A retrospective might be 10 mins long in the first few sprints if one is needed. The second trap are scrum masters who are totally ceremonial and create impediments by failing to grasp that technical impediments are the ones affecting value realisation. No point boring devs on empiricism when all they want is a stable fast environment to check in their code branch.

要查看或添加评论,请登录

Willem-Jan Ageling的更多文章

社区洞察

其他会员也浏览了