Gousto is a start-up founded in 2012 that provides fresh food recipe box deliveries in a subscription service; the idea is simple – delivering ready-measured, fresh ingredients to make home cooking simple.
The company’s success can be linked to its growth; it has scaled at about 700% since 2015, and is still on course to double every year, which brings with it all sorts of challenges. Shaun Pearce, CTO of Gousto, told diginomica at AWS Summit in London:
When it’s fresh food perishable goods, it’s not just purely a technical challenge to scale up but a physical one as well.
The London-based company has been using AWS from the outset, it was the original platform that the first Gousto website was built on, and the company has been scaling it up ever since then, using it for the apps and the underlying platform that runs all of its toolchain and delivery services.
In addition, the organisation uses AWS’ machine learning capabilities to work out how to lay out its warehouse on a weekly basis, how to read the boxes around its systems and for its recommendations engine. Pearce said:
We sell 40 recipes every week, but they’re 40 completely different recipes each week. So while a normal retailer would learn how to lay out its warehouse over time in the most efficient way, for us every week is completely different. Some weeks we might want to put garlic on four pick stations, and then there are weeks where we want to condense it into one. There’s essentially billions of combinations of how we can lay out the warehouse.
Pearce said that the recipe box industry in the US and Europe has always been limited to about seven recipes a week, and Gousto wants to scale that up; it’s at 40 right now, but it wants to get to 100. He explained:
The only way we can do that is by providing really meaningful choices for the customer, depending on what they bought before, what they like, what they tell us they like, what they’ve rated well, we’ll come up with a personalised menu for them - that’s AI and recommendations we’ve built ourselves, our own algorithms that look at both existing data and our current catalogue of recipes and can intelligently make a selection for customers.
This was launched a year and a half ago, and now 80% of the recipes it sells is through the AI algorithm.
The first area where Gousto used data and AI was for forecasting. Pearce said this was particularly important as part of the reason the company exists is to remove food waste out of the supply chain and out of customers’ homes. Pearce said:
The idea is we send you the exact ingredients so you don’t throw anything out – but we can only stand by that of we’re not throwing out a whole bunch of stuff in our warehouse as well, so our forecasting uses AI, and as a result we have an industry-leading food waste rate of plus/minus 3% accuracy; if you compare that to some of the supermarkets and what they’re throwing out, it’s quite good.
Multi-region but not multi-cloud
AWS is Gousto’s primary technology partner, and there are no plans to switch to a multi-cloud strategy in the near future. The company does have plans to go global, and that would mean multi-region AWS deployments rather than relying on other cloud vendors. Multi-cloud would become too expensive because of additional skills and running costs, Pearce said::
The whole idea of vendor lock-in [isn’t an issue], the overhead of trying to build out a multi-cloud strategy for us wouldn’t be worth it at this stage, we need to swiftly innovate and move very quickly.
The biggest challenge we have is finding good people, whether that’s AWS skills, engineering or data science, it’s mainly about talent, and when you start to spread yourself across multiple vendors that makes a life a lot harder.
As Gousto has followed a DevOps culture, Pearce believes that elevating any complexity operationally would mean its engineers are more distracted with additional platforms, slowing down product innovation. He emphasised:
It’s a tax you can decide to pay but not one we’re willing to pay at the moment.
According to Pearce, AWS helps to support the DevOps culture by removing complexity, as the basics of running a scaled platform is carried out by AWS, leaving Gousto’s engineers to worry about the application layer rather than anything underneath that. Pearce said another big benefit of AWS was how programmable the platform is.
If you compare it to traditional infrastructure in the datacentre, you’re essentially configuring everything by hand, and using configuration management tools to check that that’s there – I think for us we can manage our infrastructure like we manage our code and that makes it a lot easier and more native for engineers to be able to pick that kind of thing up.
A big challenge for Gousto has been scaling the engineering team for four people a few years ago to around 70 now, and working out how to decompose its application and deploy it to AWS in a way that allows its people to scale without slowing down. Including reduced deployment times, Pearce said:
A big part of that is containerisation – so moving away from single big applications to microservices architecture, so for that we’ve used Amazon ECS over the last year or so and that’s allowed us to move far more quickly to innovate for our customers.
All of the main compute work is done within AWS, and Gousto tends to pick a lot of the high-level services from the vendor where it can – for example, it uses AWS Batch to manage all of its machine learning models and it uses CloudFront to do all of its distribution. He added:
If there is a service that we could use AWS first, we assess that and use that if we can, and if not then we’ll go out to third parties.