John Lewis & Partners
Removing a bottleneck for John Lewis & Partners
Speeding up delivery of an ecommerce monolith
John Lewis & Partners operates a £2 billion retail website johnlewis.com. The website provides homeware, fashion, and electricals merchandise, and much more.
In 2018, johnlewis.com was powered by bespoke services within a third-party ecommerce solution, hosted in an on-premise data centre. Six teams released new website features via the same monolith, every 21 days. John Lewis & Partners was committed to a multi-year digital transformation, and a cloud-based microservices architecture. However, there was an immediate need to speed up monolith releases, to accelerate short-term delivery and increase product revenues.
As part of our multi-year partnership with John Lewis & Partners, we worked together to improve the release process for the ecommerce monolith. A cross-functional team from Equal Experts and John Lewis & Partners was given a six month budget to achieve weekly releases. We were forewarned that previous technology-focussed solutions had failed.
Releases achieved within three months
Cost saving by realising benefits three months earlier than estimated
About John Lewis & Partners
John Lewis & Partners is one of Britain’s oldest, largest, and most popular retailers. John Lewis & Partners operates 42 stores across the UK, as well as johnlewis.com. The company is co-owned by its 83,000 employees, and is renowned for its exceptional customer service.
Continuous Delivery acceleration
Understanding the landscape
Releases of the ecommerce monolith had many interconnected challenges:
- Environments for integration testing, release testing, and production were manually provisioned.
- There was little visibility of what was running in each environment.
- Different teams ran different tests in different environments.
- Deployments were slow, and sometimes unstable.
- With a six month budget and a release every 21 days, we had a scheduled maximum of eight releases in which to make changes.
We started by collecting and visualising actionable data.
Creating a dynamic catalogue of monolith versions and environments, we clarified the path to live and provided a real-time view of what was running where. After that, we visualised lead time (time from code to deployment) versus interval (time between deployments) for prior monolith releases. This gave us a clear picture. As the lead time showed build, test, and deploy activities required 14 days, this told us the product delivery bottleneck on weekly releases was in there.
We looked closely at the release testing activity, and confirmed it was a bottleneck. Each ecommerce monolith version incurred multiple release testing delays. The major factors were middleware downtime on deployment, and brittle end-to-end test scenarios. We estimated at least three months of work would bring release testing time down to a few hours.
As testing wasn’t a bottleneck on fortnightly releases, we recommended moving from 21 day to 14 days as a stepping stone to success. However, when we collaborated with the operations team on a release plan, we discovered there was a second bottleneck in skills liquidity. As the release manager worked alone on callout rota coordination, release note validation, and change management for each release, the operations team would only be able to agree fortnightly releases, if we could reduce the release manager’s workload.
Removing the bottleneck
Focussing exclusively on the release management bottleneck for fortnightly releases, first, we replaced callout rota emails with a central rota owned by the development teams. This provided immediate success. In under a day, we eliminated countless emails and toil for the release manager.
Next, we automated the release note workflow. Just two weeks building a release note generator in Python produced a single release note for all development and operations teams working on the ecommerce monolith. This replaced four different teams manually producing three separate release notes. Again, the release manager reported a noticeable reduction in their workload.
Finally, we found another team member to share release planning work, alongside the release manager, then ran a single fortnightly release R20 as an experiment. No new errors were found. This was when we agreed with the operations team to permanently run the ecommerce monolith on fortnightly releases from R32 onwards.
An updated visualisation showed build, test, and deploy activities remained at 14 days as expected. The interval had been successfully lowered to 14 days, eliminating the bottleneck on fortnightly releases within three months.
A stepping stone to a digital future
The technology stack for the ecommerce monolith and its on-premise environments was extremely complex. Moving to fortnightly releases in three months made a big difference to John Lewis & Partners.
Our product manager was delighted when the product revenue uptick from fortnightly releases was higher than expected. As a result, they decided not to invest another three months of effort in the release testing bottleneck for weekly releases. This saved John Lewis & Partners £230K in budgeted team costs, and allowed team members to join the digital transformation programme earlier than expected.
Moving the ecommerce monolith to fortnightly releases resulted in faster customer feedback, increased product revenues for John Lewis & Partners, and boosted early efforts on the John Lewis & Partners Digital Platform.
‘Fortnightly deployments of the ecommerce monolith was a goal we’d wanted to achieve for a long time. It was great to work with a like minded team, who took on the challenge and made it possible in a relatively short period of time.’Rob Hornby, Platform Product Manager at John Lewis & Partners
Working with John Lewis & Partners on ecommerce monolith releases was a lot of fun. We succeeded by taking a holistic perspective, and focussing on people and process changes as well as technology.Steve Smith, Continuous Delivery & Operability Practice Lead at Equal Experts.
Want to know more?
Are you interested in this project? Or do you have one just like it? Get in touch. We'd love to tell you more about it.