Merry Quick Fix
The update before christmas
When it comes to updates and fixes, you pick key moments that interfere with day-to-day operations as little as possible. But every now and then a situation arises that leaves you with one choice only: to act immediately. This is the story of a system the Jumbo supermarkets rely on heavily and use frequently: The Jumbo Dashboard. In the days before Christmas, its success also became its biggest enemy.
Bastiaan Bronwasser and his team @ Jumbo Tech Campus, helped implement the Jumbo system some 6 years ago: “Basically, it processes every receipt the cash registers produce, analyzing and categorizing the data to give store managers real-time insight into their stock. But it can also generate reports that show current revenue and the number of clients that frequented the store up until a certain time. All in all, highly useful information for any manager.”
And then there was Covid-19
The system worked pretty much flawlessly for years. But halfway December of 2020 it started showing signs of slowing down. The reason? The pandemic. With restaurants closed for Christmas, people turned to staying and dining at home. Sales and the number of customers in the supermarkets both skyrocketed. That additional load provided a challenge for the dashboards’ backend, Bastiaan explains: The stores started generating more and more reports and the burden on the system threatened to render the core functionality, real-time stock management, impossible to use.
From monitoring to intervening
Bastiaan and his team already knew there was a risk of that happening: That’s why they monitored the system closely: “A few days before Christmas we saw the system slow down significantly and on the 24th of December it almost came to a halt. To help keep the stock-monitoring functionality intact, we temporarily disabled the turnover reports.”
But the team knew they had to act now to restore full functionality, without disrupting business. Bastiaan recalls the events: “I had just done my Christmas shopping and I was preparing our Christmas dinner. We quickly organized a remote team meeting with front- and backend developers. I put my earphones in, opened my laptop and we discussed our options.”
The answer was in the memory
The data from the cash registers is processed in real time. It is aggregated into a kind of information pyramid, with the turnover and number of visits on the very top, as the sum of all the data below. Bastiaan: “The handling of all that data happens in memory. And the increasing backlog started clogging that memory, so to speak. We knew we had to start there. I made some calculations and came up with a way to reduce the memory load by some 75%”.
Build, Implement, deploy, open presents.
At that point the team rolled up their sleeves and got to work. Bastiaan: “We made a design and we built it. After that we ran many tests, to be sure it would keep working. Then we contacted upper management to get the green light for deployment during the busiest time of the year. As soon as we got it, we gave a few stores access to the new version. And soon after that all stores were able to use it.
This whole process took only 3-4 hours. It was a strong demonstration of the systems’ flexibility and the power of wanting to get things done, together. In the end, we were ready in time for our own Christmas dinners.”, according to Bastiaan.
And the best part? What was built then, still runs today.