By Michael Rose, Head of Technical Architecture.
Retail, particularly fashion retail, moves incredibly quickly—faster than any other industry. New technologies are coming to market almost daily, which means continually new digital touchpoints and consumer expectations.
With this, I know that retailers face complex challenges; they want to show they’re maintaining pace with innovation, yet keeping bulky, monolithic systems up to date is painfully slow, expensive and risky. This, unfortunately, can widen the gap between customer experience expectation and retailer reality.
Microservices, meanwhile, are often built with APIs as the main objective. API-first technology vendors make a primary architectural decision to build their products for flexibility and inclusion.
Historically, retailers used one giant system—a monolith. A monolithic system is deployed all at once, so if retailers wanted to introduce new features and services, they’d have to add new code to the whole code base.
But there’s an inherent risk with such a system. As it’s all one big piece of software, if there’s a rollout mistake or the features aren’t quite as expected, the whole system is affected. To correct this, retailers have to roll the whole system back. There’s a fundamental lack of agility.
A monolith is one big piece of software, so if there’s a rollout mistake or the features aren’t quite as expected, the whole system is affected.
Microservices, by contrast, give retailers the flexibility to decide whether to introduce a new feature quickly. They can, in theory, build a brand new microservice for just that feature, and push that out independently.
If a retailer’s system is architectured correctly, it can self-register within the existing environment. But, if there’s a problem, the retailer can simply take it back down. There’s almost no risk or danger to the existing system.
Technological flexibility and agility are the best vehicles for keeping up with the pace of innovation in retail. If a retailer wants to react to market changes quickly, or launch a new user feature to meet a new trend, they want to do so with minimal risk to their existing systems.
Flexibility and agility are the best vehicles for keeping up with the pace of innovation in retail.
With a monolithic architecture, a large business may have 40 or 50 developers all contributing to the same code base. On any given day, there could be 10 features being committed to the same system, potentially conflicting with each other.
A business or retailer with a microservices architecture, meanwhile, could have a team deploying the same 10 features. In this instance, however, they are committed to 10 different services, each one isolated to that individual code base. With microservices, there’s minimal risk of development conflict.
In the retail space, the greatest example is Amazon—everything they do is microservices based. Rob Brigham, senior manager for product management, explained in 2015 that, when dealing with a huge monolithic application in 2001, Amazon’s developers were mostly kept apart from each other. This meant the teams were siloed from Amazon’s ultimate goal. The then-revolutionary approach to resolving this issue with microservices became one of the prototypes that led to the creation of cloud computing.
Whilst most major retailers are well on the path to adopting microservices, there’s some hesitation among small and medium-sized retailers. It can be complicated to go from a monolithic to microservices architecture, afterall. Deciding which capabilities to migrate and decouple is just one of the architectural challenges, as well as minimising dependencies on your legacy system. In an online retail application, for example, extracting a part of the monolith involves carefully extracting data, logic, user facing components and redirecting them to the new service.
Many risk-averse retailers are reluctant to introduce something new to their technology architecture. Such retailers prefer to stick to a system that is tried and tested, even if the advantages are minimal and the system is hindering innovation. This is especially true around the time of peak season.
With microservices, however, there’s far less risk to their existing systems.
So, what’s my advice for retailers hoping to adopt a microservices approach?
The best path is to pick one new feature and develop it as a separate microservice. Remember, you don’t have to do a ‘big bang’, or jump feet first into all things microservices.
This new feature can be developed separately to sit alongside the existing architecture. Then, once the theory has been proven, that retailer can start lifting other components out of the monolithic system and put them into new, separate services.
I’m afraid to say, it’s a case of adapt or die. If a retailer remains reliant on their monolithic system, there will always be another retailer with a more agile process that can bring new features to market quicker. And that retailer might not even exist yet.
Consider Blockbuster and Netflix. Netflix changed the movie-rental market entirely, whilst being the biggest proponent of microservices in the world. It can roll features out incredibly quickly, and it killed off the traditional player in the process.
If you remain with a monolithic system, there will always be another retailer with a more agile process that can bring new features to market quicker. And that retailer might not even exist yet.
At Sorted, we’ve been able to develop our solutions in microservices right from the beginning. That means we can react to changes in the market incredibly quickly. But why does that help our retail customers?
Carriers, like Hermes or DPD for example, continually innovate and update their services, introducing new features and bringing new experiences to market. So, because of the way we design our services, we can immediately mirror these new features for our customers. As a customer of Sorted, we keep up with the pace of innovation for you.
Ultimately, it’s all about speed, agility, and reduction of risk. With a microservice architecture, you can extend your existing ecommerce and delivery infrastructure easily. This means you can respond quickly to the next customer trend and start to close the experience gap.
Read more about how to optimise the delivery experience in our guide Ecommerce Examined: Assessing the delivery experience.