Agile Methodology, how it made Zomato Multibillion Bagger?

Ram
9 min readOct 20, 2021

Technology is the backbone for most of the startups to reach their idea to millions of users. Technology is alone not sufficient and need to consider the approach to validate the business idea in the marketplace to reach target customers in the segment. All the users having their own preference and specific needs. To fulfill those needs, need to adopt the proper process which should be flexible and test our application frequently and develop the features instantaneously by not taking much time to deliver and test the functionality. By considering all the factors, new approach was born with the name of Agile Methodology which helps the product and service-based companies to deliver the product frequently and incremental fashion.

What is Agile Methodology?

An agile methodology, an iterative and incremental approach in the software development process. In each iteration, delivers some value to the product in the incremental path. Each iteration lives for 1–4 weeks of time based on the organization and priority of delivery of the feature. The agile development approach is aligned to deliver the dynamic and complex business needs which requirements couldn’t be freezed like traditional SDLC.

The Agile Methodology seeks continues feedback from the users and adjustments would be done based on the user needs and it would be prioritized for next sprints.

Traditional Method- Waterfall

In the traditional Method, everything happens in sequential way like Requirements should be freezed and designs should be finalized before actual development starts. Testing starts once development done and delivered to QA Team. Until then product see the light for months and months. For getting feedback for the product took lot of time. We can’t make the changes even user not satisfied with the product.

Traditional Method vs Agile Method

Agile Team Composition:

Every Agile consists of self- sufficient with 5 to 9 team members with cross functional knowledge and team composes of 1 Product Owner, 1 Scrum Master and Dev Team.

Introduction to Food Aggregator services in India

Online food delivery is the system in which customers can order food and receive desired food products at the doorstep. It involves software that allows restaurants to accept and manage orders placed over the internet. Indian customers have the option to choose from a wide variety of cuisine’s options of different restaurants while browsing the website sitting at home. In India, market players are mainly concentrated in the country’s urban regions like Mumbai, Delhi, Bangalore, Delhi, and Mumbai. However, vendors are now also targeting smaller cities, as they have strong growth potential. The Online Food Delivery Market in India was worth US$ 4.66 Billion in 2020.

Online food delivery works on two delivery types i.e. Aggregator & Cloud Kitchen. The Food Aggregators allow consumers to compare and order their meals from different restaurants through a single app. It is more prevalent in India than Cloud kitchens as cloud kitchens are commercial facilities purpose-built to produce food specifically for delivery. According to our study, India Online Food Delivery Industry will grow at a staggering CAGR of 28.94% during 2020–2026.

Introduction to Zomato

Zomato is a food delivery firm and is renowned as an Indian restaurant aggregator. Founded in the year 2008 by Deepinder Goyal and Pankaj Chaddah, the food aggregator has brought many restaurants and food joints to build up their client base. On Zomato, you get all details like menu, price and user reviews of the listed food joints. This makes it easier for the users to select the best food joint or restaurant from where they would like to order food and restaurants also get more business.

Use case: how to use Agile Methodology to implement features for the Zomato like

· Rate/ Review Restaurants, Dishes and services provided

· Implementing Search filter

· Online ordering

Rate/ Review Restaurants

Rating and reviewing, a restaurant, adds a sense of real world user experience to the restaurant listings, thereby verifying the quality of a restaurant and the expected experience of the food and the restaurant as a whole.

This feature can be iterated to better version as shown in steps below:

A simple Like/Dislike button. After analyzing if users are actually interested using this feature religiously after visiting a restaurant, we can move to the next version.

2. A linear scale from 1 to 5 Stars with a text field to add a detailed review.

3. A quick & easy to fill feedback form like below can help user rate restaurants on various other parameters. This will help capture some good info that users usually miss out while writing a review or if they did not want to write a detailed review at all. The text field to write review remains.

4. Next we can move on to the features of adding photos and sharing the reviews on Social Media.

5. We can then work on a Google or FaceBook integration, where Zomato detects the restaurant the user had been to last (by extracting info from check-ins on FB or Destinations on Google Maps) and pops up the restaurant review page the next time Zomato app is opened.

Search Filters

Zomato has a huge database of restaurants. It would be tedious and cumbersome to go through all of the restaurants listed. Hence, the filters are the primary and the most important feature of Zomato to enable user to find the right restaurant in a sea of listings. To make the search as relevant to the user as possible, the filters have to be easy and efficient.

The incremental addition of features in the Filters is show in steps below:

1. Basic Filters based on:

a. Veg/Non Veg

b. Type of Cuisine

c. Location

d. Average Cost

e. Establishment Type — Eg: Pub, Pet-friendly etc.

2. We can then add a “Sort By” feature showing the most to least relevant.

a. Distance

b. Rating

c. Cost

d. Popularity

3. We can then add “Quick Search” Filters that are easily accessible like:

a. Home Delivery

b. Pocket Friendly

c. Open Now

d. Rated 3+

Based on user researches and usability tests, the filters have to be made more and more easy to use and giving optimum search results.

Online Ordering

Order Online at Zomato

Most of the users were very accustomed to browsing for restaurants on Zomato and then jumping on to another platform like Swiggy to make an online order, only to realize that the restaurant doesn’t deliver in your area. So you went back to Zomato to search for another restaurant, read reviews, finalize and then place the order on a food delivery platform. By integrating online ordering, Zomato reduced this cumbersome and tedious process.

Iterations of the product could be as follows with each feature added in next iteration in the following order:

Considering the restaurant side functionalities are built, we move to the user side functionalities.

1. First build the user side functionalities like:

· Click and select items on menu

· View/edit cart

· Add Delivery Address

· Make online payment thru various payment channels/COD

· Track order and get notifications instantly

· Feedback of Food quality and Online order experience.

· Customer Care Support.

2. Introduce Zomato Credits for customer loyalty where they earn credits on each order or if they refer friends etc.

3. Customer Support — Once users are familiar with the process, the number of tickets reduces, then we can introduce a “Request Call” feature which allows the user to click a button and receive a call automatically from Customer Support.

FEATURE 1: Rate/ Review Restaurants

Rating and reviewing, a restaurant, is a real-time review provided by the user of the restaurant and hence it is one of the main factor considered by a potential customer before selecting a restaurant to order food.

This feature can be shown in different ways, explained below are two of those approach of which anyone could be finalized based on A/B testing.

1. A simple Like/Dislike button. After analyzing if users are actually interested in using this feature religiously after visiting a restaurant, we can move to the next version.

2. Provide a star rating.

Both features could be then iterated further based on user requirement. Let’s consider after doing user testing and interviews you identify that user is more comfortable with 2nd option and want a comment button below

Iteration: 1.2.a RATING (Star rating-comment box)

Iteration 1.2.b: RATING (Star rating-comment and attach file)

Now consider you get few suggestions from users that they want to attach files also of food/restaurant ambience/etc. Then you’ll create a user story and get the volunteers to add the feature in scrum meeting and maybe come up with a folllowing new feature in 2–3 days

Feature 2: An interactive approach: Filters for searching restaurant and dishes

The team conducted User Research and created a primary persona for Zomato and came to a conclusion that the target audience wants filters for food, restaurant and based on location in the Zomato application search bar.

So, an interactive prototype is created where a user could search by food items. This was tested with some users. The test results immediately validate that there is indeed a demand for search by food item feature.

The team began working on the design and implemented an initial version of the feature which allowed users to search a food item like ‘Hyderabadi Biryani’ or a restaurant name like ‘Purely Risottos’ in the search bar. After some more usability testing and stress testing, the feature is finally deployed.

In the next iteration, the team shall add location-based using map.

FEATURE 3: ORDERING FOOD ONLINE

Above feature could be best developed in a sprint. On the first day, the team comes together and builds a sprint timeline. Imagine, the team has to finish an EPIC having 4 user stories to be completed in 2 week time. Following is a flowchart of the process to be followed to develop the features/task.

EPIC1

I would like to order food using my mobile from zomato and make payment. Post which I would like to track the status of my food location before delivery. I would also like to rate the delivery boy service and the food.

User story1

Order food online from different restaurant’s menu and make payment via net banking/COD/Debit/Credit card.

Feature1: Select food from menus of different restaurant, add to cart and provide an address for delivery.

Feature2: Check images of the food selected in the menu clicking on the food item.

Feature 3: Mapping payment gateway for netbanking using several banks debit card.

Feature 4: Mapping payment gateway for netbanking using a credit card.

Feature 5: Adding COD feature.

User story2

Post order booking I would like to check the status of the food delivery.

Feature 1: Send a message/WhatsApp message to the user about food status after every 2 minutes.

Feature 2: Provide a live location of the delivery boy using GPS service.

Feature 3: Update in the application the status from “in queue” to “on the way” to “delivered”.

Hence the agile is the best approach to manage a product development lifecycle which simplifies each user story into features. Those features could then be tested among users and finalize on the most preferred one.

This are my view on agile product development and that’s how I believe a product like Zomato could be developed.

--

--

Ram

Product Manager by profession with 9 plus years into business analysis, Product Management & Agile practice.