Articles

Software Development Productivity is not about getting more done

Does Software Development Productivity always mean getting more work done in less time? No.

Software Development Process

The other day Paul Adams, who runs product at Intercom, posted the above diagram. Which made me think of a challenge that Jonathan Cutrell‘s podcast gave to its listeners on his episode about development productivity:

Minimize the output to get to the same place.

Productivity and effectiveness is not about how much you do, but about what you do.

Jonathan Cutrell – DeveloperTea

It is easy as an engineering manager to get focused on the “Outputs” stage e.g. how many tickets we moved to Done this sprint. However the best in class teams evaluate their work by focusing on what business value can we deliver. How do we get to our desired outcome for our customers with by being the most effective and efficient.

What is software engineering effectiveness?

Software engineering effectiveness is to do things right.

What is software engineering efficiency?

Software engineering efficiency is to do the right thing.

What can you do today?

Spend more time in the inputs stage. For instance, go over your Jira backlog for the next sprint. Now look through it from the lens of what’s the least the team can do to get to the output desired. Some useful tactics:

  • Go back and forth with the product owner to share with them the complexity and alternative of each solution
  • Challenge architecture and technical decisions
  • Spend more time discussing the design document
  • Ask your team to suggest alternatives
  • Share the business goals with the entire team

In conclusion, doing the right thing means spending more time on the input stage but it pays off and over time you’ll see it impact your team’s development velocity.

And remember, in the words of Kelsey Hightower, “no code is the best code”, it doesn’t break and doesn’t need testing.

About the author

Eiso Kant

Eiso Kant is the Founder and CEO of Athenian where he gets to work on helping software development teams reach their potential. Eiso is a big believer of using data to support engineering teams in improving their processes and removing bottlenecks. Never forgetting that software development is about people and culture first, the tools we use just give us extra superpowers.