19 February 2019
Why Does Dodo Pizza Need 250 Developers?
In autumn, we announced we were going to expand our IT team from 49 to 250 developers. And immediately we were buried under an avalanche of questions—mostly, people were interested why a pizza chain needs so many software engineers. How did we come up with such a number? So now I want to answer that.
As you may know, Dodo Pizza is a franchise. Currently, we have more than 450 pizzerias in 12 countries, including the USA, UK, and China. The core of our franchise is Dodo IS, our information system that controls most of the business processes in any pizzeria.
Dodo IS developers work on a number of projects simultaneously—a mobile app, website, CRM, ERP, HRM, and a call center. Any such subsystem demands a lot of work and can make for a whole business enterprise.
Take CRM, for instance. Dozens of companies all around the world dedicate themselves solely to the development of CRM solutions and sell them as SaaS, founding whole businesses upon it. But at Dodo Pizza, CRM is just an element of the Dodo IS platform.
It’s an obvious fact today that technology drives business growth, so new Dodo IS features drive us to grow. And now we see that a team of 50 software developers is positively too small for our current scale.
We have a number of urgent business goals.
- We actively go global and explore new countries for our business. Nowadays, we work in 12 countries. We need to adapt various Dodo IS features for every one of them. For example, for cash registers to work correctly in any given country, we need to know national tax rates, the specifics of the integration of cash registers with terminals and other equipment, local fiscal procedures, and a lot more. Or, we have a mobile app that currently works only in Russia. We want to make it so that in any particular country the mobile app could be launched at the exact moment the first pizzeria is opening there. And if you ever ordered our pizza in Moscow, you know we have a bonus program, but it’s currently only available in Russia and needs some technical improvements to be launched in other countries.
- We need to build an inventory and stock management system. Our inventory logic leaves something to be desired, and it’s hard to conduct an audit inside the current system. As a result, sometimes we have to deal with inadequate data, projection errors, ingredient losses and write-offs, and ultimately with the loss of money.
- Recently, we launched a new product, a half-and-half pizza. We’re also going to launch a build-your-own-pizza service, so you can put together a pizza with any ingredients you like. You’d think it’s an easy task. But to launch it, we had to make changes on the web site, add the build-your-own-pizza feature to the mobile app, revise order tracking in the kitchen for pizza makers to see what ingredients they need for the halves, and improve the logic of ingredient usage, inventory, and the product settings to boot.
- Our chain is growing, and now some of our franchisees have pizzerias in more than one city. They need integrated management and statistics interfaces for the whole network. We do have those already, but only for particular pizzerias.
- And, I’m not even mentioning lots of improvements requested by our partners, managers, and customers in all 12 countries.
There is also a problem with the system’s stability. Our pizzerias work 24/7 all around the world, and Dodo IS should function smoothly, so that its downtime would amount to minutes a year, not hours. (Incidentally, one minute of downtime costs us about $1,500; this figure grows constantly with our sale revenues, and during the last year it has doubled.) So we’ve got a lot of technical tasks—for instance, to split this monolith up, decrease the central database workload, monitor errors and their cost, and restore the system quickly after a failure.
And that’s still not all. We’re thinking about the future, of course. I’ll outline the direction of our thoughts briefly.
- We’re considering further automation and exploring the possibility of the implementation of speech recognition for taking customer orders.
- We’re working on personalization to create a unique experience for every customer.
- We can already assess shifts in advance and soon will be able to project sales to manage our stock efficiently, save money, and reduce losses, because sometimes pizzerias are overstocked, and when the expiration date comes, they have to write the ingredients off.
- We want to seriously improve our delivery service and create a smart operator—the system will assign orders to couriers automatically, and the delivery time will be shorter.
- We want to create an open API, so that anyone could see our data and, perhaps, create their own app for ordering pizza.
- We want to implement integration with our suppliers, so that every time we’re delivering pizza, our customer knows what cheese we’ve added to it, where it was produced, and in what conditions it was stored.
- We’re opening the “pizzeria of the future” in China. There will be no cashiers there, and all orders will be processed via the WeChat messenger. The key element of the pizzeria design will be media screens showing our product ads, and they won’t be like the ads the European pizza market is accustomed to. There will be QR codes everywhere, and all interactions will be as digitized as possible. This is not just the future, this is a reality we’re creating at this very moment.
Why 250? Why not 300 or 500?
At some point, we realized that the only reason Dodo Pizza has achieved anything in business is that we set ourselves a goal. And not just any goal, but a goal we want to achieve, a goal that drives us at work and motivates us to wake up in the morning. If you have that, you start to think differently and look for the ways to bring it nearer. In the beginning it seems unrealistic, but then becomes more and more tangible and attainable.
Want to know why 250? Because it’s a lot; it’s a big goal. 300 is also a lot, but we’ve talked to our CFO and saw that there were certain risks. Maybe 300, but for 3 years? No, 3 years is too long, it would seem like we have too much time. 2 years will be better. Let’s say, 250 for 2 years? Deal.
And that’s it. Life has changed.
Every question, every new developer’s onboarding, backlog prioritization, investment in growth and development, salary issues, and many more problems are being solved considering those 250 developers. Is it working now? Will it work when we have 250 employees? If not, let’s change it.
We have 11 teams now, every product owner knows all project tasks and details by heart. When we have 50 teams, it will be impossible for POs to remember everything.
We understand how to scale the team up, have ground rules, and already have begun to carry these things out. Our basic framework is LeSS. Recently, we’ve implemented the first LeSS Huge case in Russia. It’s about implementing principles, components, and elegancy of Scrum for 250 people as simply as possible. Every day, we’re preparing our employees for the situation of having 50 teams instead of 11. And we’ve got a lot of work ahead of us.