Don't scale Agile. Descale your organisation.

19 June 2015

Notes from Stuart Bargon's talk at Agile Australia 2015.

Domain Group, Stuart's Twitter @stuartbargon

Everyone agrees that companies will operate best when there is alignment, that is, everyone is rowing the boat in the same direction. However there is disagreement whether 'organisation' or 'autonomy' is the best way to structure a company.

Stuart told the story of how Fairfax changed Domain's environment to produce an autonomous team.

Domain Mobile App

A Brief History

2-3 years ago development of Domain.com.au was entangled in Fairfax and all its other properties. This organisation structure included:

  • PMO
  • Steering committees
  • Long term resource planning
  • Centralised functional teams
  • Shared network resources
  • Many different frameworks
  • Days to do a release
  • Volumes of policy

All the digital Fairfax properties were developed in a project based process. This lead to code on top of code as developers from the pool were selected to work on the next project in the PMO queue.

This structure was not conducive to Agile development or quality.

Domain was Untangled

Over many months/years key staff formed a separate Domain Group. This started with Developers and Product Managers but eventually DevOps, Infrastructure and even HR joined the team. Separation allowed design & development to flow. Having a separate HR function meant they were able to recruit people who were specifically interested in the product (Domain.com.au) instead of developers becoming part of the generic pool to work on any Fairfax product.

  • Product/Features team
  • Multiple releases in a day
  • Domain employees
  • Own whole process
  • Improving architecture
  • Adapt quickly to change
  • Dedicated 'team areas'

The Development team wanted to blog and leadership said okay go ahead and make it happen. See tech.domain.com.au

Strong Leadership is Required for Alignment

  • Leadership, vision
  • Product managers, how to reach vision
  • Development (hiring for specific product instead of central pooled allowed focus on just Domain development)
  • Testing
  • PMO came to the Domain Group but it wasn't necessary and got removed

Descale the Product

Features that were not used were taken out of the product. As soon as the developers knew that they were long term on the product they started to care more about the codebase and began optimising it.

Descale the Technology

The website was tied to Fairfax infrastructure but slowly the website was decoupled so that the Domain Group had full autonomy over the technology stack.

Descale Finance

The Finance model had to change to.

Descaling Finance

In the new structure they use relative estimation for everything.

Office Space

Fairfax had recently implemented a hot desk system however this doesn't support team based development. Team members could be spread out over the building. At first they started to bags desks by putting Domain stickers on them but eventually they got their own dedicated space and soon they are moving to their own offices.

They didn't have much space but Stuart thinks that squashing people in as a team brings an energy to the environment.

Proof in the Pudding

My personal reflection is that Domain has done something right when you compare their current website to their main competitor. This is obviously due to a mix of strong leadership, hiring good talent and the environment. Having strong leadership and a good environment will also attract good talent.