Hardware and Building Tools Ltd.
Scenario
Once a single store supplying building tools to the local tradesmen, H&BT has since had a surge of growth and now operates 5 stores across the surrounding counties, each with their own eCommerce platform.
Historically the IT team at H&BT have been providing these eCommerce platforms via a core repository, providing roughly 70% of the required functionality, with remaining work being bespoke to the client.
A technological investment firm have recently invested a great sum of captial in H&BT with views to greatly expand the number of stores and take the company across the whole country, however there's concern raised in the investment paper that the current means of onboarding won't be sufficient to meet the investor's requirements.
Business Objectives
- Speed of onboarding: With plans to expand out to several sites, H&BT are looking to onboard new stores at faster pace than they experience currently.
- Fine-tune IT costs: With external investment now playing a part in H&BT's finances, there's a desire to ensure that their IT costs are only targeting the absolutely required elements.
- Reduce ongoing development times: Given the size of the organically grown codebase, along with the intermodular dependencies that have arisen as a result, new feature development estimates are coming in 150 - 200% larger than it's estimated (by the Technical Leads) they should be.
Proposal
After technical investigation, it is suggested that the delay in onboarding, along with the increase in story point estimates for new feature tickets are as a direct result of the interdependent, modular structure of the monolithic codebase.
As a modern alternative to a monolithic architectural design pattern, both serverless and microservice patterns have been considered, however upon consulting with the Head of Engineering it has been suggested that the development squads would currently be better suited to a coding style that favoured the existence of servers.
As a result of these considerations, it is recommended that H&BT rebuild their currently codebase and applicational estate in a microservice design pattern, resolving the following challenges:
- Speed of onboarding: As part of the migration over to microservices, H&BT will find that the common functionality of their platform will become standardised and the frontend portion decoupled, leading to an increase in the time it takes to onboard new stores.
- Fine-tune IT costs: By breaking business functions out into separate instances, rather than modules on the same instance, H&BT will be better able to fine-tune their infrastructural costs by outerscaling only the services that need extra power and only when absolutely necessary, as opposed to having to scale up the whole instance.
- Reduce ongoing development times: By reducing interdependency in the codebase, as well as encapsulating modular scope within decoupled services, the time to develop new features, along with the % chance of bugs being raised, should reduce dramatically.
Designs
Outcome
All businesses and events in this case study are entirely fictional. Any similarity to actual organisations, past or present, is purely coincidental.