Getting the job done using Jobs-to-be-done framework

Redesigning a food delivery application

Aayush Jain
Aayush Jain Portfolio
8 min readMar 7, 2016


It was one month after I successfully completed my first task, of my first ever job, when I came across an article by Nikkel Blaase on Why Product Thinking is the next big thing in UX Design.

Its resonance with my thoughts, my approach and my process, motivated me to write about this project. I have referred to parts of his post throughout this article and would like to thank him for the same.

This was the the challenge.

Redesign the mobile app for Foodpanda : a food delivery marketplace
One week. One person. One unique solution.

Feel the Product, Understand the Process

Order food.

I was hungry. I browsed through some restaurants. I ordered food. It got delivered on time. I ate it and continued netflix.

Based on my experience, I listed down few things which I thought were missing, like tracking the order status, image of dishes, reordering, etc.

But, these were just few more features.

Dig through all similar applications

Zomato Order, Tinyowl, Swiggy, Box8, Faasos. I downloaded all. All had one, same structure.

Common structure across all the food delivery applications
Interesting features across different apps

What new can I add to this? Everything I can think of is already there in some application or the other.

Features are merely a small, fragile part of the product. They are only a few of many thinkable solutions for a user’s problem the product tries to solve.

Think in Product and dive into the Story!

I was curious to find out the problems, the reasons for all the features and the reason for the similarity in structure and features across apps.

Thinking in products means, thinking in specific user’s problems, in jobs to be done, in goals. The core user experience is not a set of features, in fact, it is the job users hire the product for.

I wanted to know all such jobs.

Finding and improving the social, functional, and emotional dimensions of these jobs helps to design products that are precisely targeted at these jobs.

I was with my friend, we were travelling, we knew from where to eat, we were extremely hungry. We hired foodpanda to get the job done.

From feeling hungry to watching netflix. My story with the product lied between these events. This was my domain. I again ordered food. I observed every little interaction of my thoughts and my environment with the service.

I wrote the key points and organised them. They formed a matrix. I call this a Story Matrix.

The Story-Matrix

Every product has a story. The story-matrix starts from the moment something triggers the thought of using the app to the point just after the user have successfully completed the desired action.

All the problems you aim to solve, all the features you intend to have, all the solutions you plan to give, all jobs you want to get done, somehow lie within this matrix.

Connecting these dots horizontally can result in infinite user stories.

Surprisingly, it gave me answers to ‘why’ of all the features.

I generally order food with my friend. That’s why there was a group order option. They must have analysed people were ordering in groups (maybe through the average value of orders).

I eagerly wait for my food to come. They showed order status.

I am not at home sometimes. They sent utensils along with the delivery package.

“Customers’ behaviour must be observed rather than inquired”

The Solution

I was totally engrossed for five continuous days. I came up with the idea of story-matrix, which I now use in all of my projects. Although no solution yet. Only two days left.

“Fall in love with a problem, not a specific solution”

My eyes and ears were always open, constantly seeking some solution, somewhere, somehow. I was obsessed. Does this happens when you fall in love with a problem? Maybe. I was mindful.

My friend asked me :
Bhai, bahut bhook lagi hai, kya khaaega?
(Bro, I am hungry, what should we order?)

I became still. I stared at him. I stopped listening to whatever he said after that. Thousands thoughts rushed in my mind within a fraction of seconds. I hugged him. Bhai!


The problem lied at the beginning of the story-matrix.
The very first thought after hunger triggers.

Yes, it was that simple.

I don’t know what to eat?

This was the problem, I wanted to solve.

Thinking in product makes sure designers tackle real user problems and herewith reduce the risk of building something nobody wants.

People hire products to change something for the better. They don’t get active because everything is fine, but because something is wrong.

As Harvard Business School professor Theodore Levitt puts it, Sell the Outcome, not the Solution:

“People don’t want to buy a quarter-inch drill.
They want a quarter-inch hole!”

A section of Recommendations

If someone tells me that you should definitely eat ‘this dish’ at ‘this place.’ I do try that. And if I really like, I tell it to others and thank the person who recommended it to me. Word-of-mouth. This is exactly the why, how and what of ‘recommendations’, nothing but Word-of-mouth, virtually.

Uncover the job and the solution becomes obvious.
Tell people what to eat, help them to make a choice.
The Solution : Recommendations

“It’s not the customer’s job to know what they want” — Steve Jobs

Who are the people who use the app? Why are they using the app? What do they want?

They are mostly new to the place, people who want to eat something different, people who don’t know what to eat or where to eat from.

Foodpanda’s core user experience is to get food on time. Recommendations, displaying trustworthy dishes to eat, is a suitable feature that expands this experience.

Whom to get Recommendations from?

Food delivery apps work for a locality, they show a list of restaurants that delivery at the current location. All the people in the user’s locality gets the same list of restaurants as him.

Who else would be better, to tell what’s good to eat, than the people around, who have ordered the same dish?

Authentic and trustworthy data!

But, wait, why and how will people recommend dishes to others?

People will be motivated to recommend once they are satisfied with the recommendations themselves, also, as gratitude for others.

Once people experience the benefit of getting good things to eat, just because of the fact that others recommended them, they might also do it, if it’s easy to do so.

An hour after the order is delivered, probably after the user has finished eating the food, he will get a trigger to recommend the dishes he has ordered. Something like this.

Enjoyed the dish? Tell people around you to try it!

They can do it quickly by just clicking a button.

According to BJ Fogg’s Behavior Model, for doing a task and forming a ‘Behaviour’ there has to be a motivation for doing it, ability to perform it and a trigger for the same.

“Building features is easy, building the right features for the right people is challenging”

When thinking in products, the following questions must be answered first: What problem do we solve? (User problem). For whom are we doing this? (Target audience). Why are we doing this? (Vision). How are we doing this (Strategy) and what do we want to achieve? (Goals). Only then it makes sense to think about what exactly we are doing (Features)

Design and Visuals

(Android App | Material Design)

1. Recommendations

Separate tab for recommended dishes.
Cards for dishes with most recommendations.
Recommended dishes categorised according to meal-type.
Taking recommendation for dishes after order is delivered.

The complete ‘Recommendations’ flow

2. Order from one restaurant at a time

Job : I like milkshake from Aromas and Lasagne from Mintleaf Restaurant.I want both.

Currently, I can’t do this using any existing app. Although it sounds compelling to give the option to order anything from anywhere. But why is such option not there anywhere?

While redesigning you have to keep the whole system in consideration

Foodpanda, does not have a delivery network of its own. Thus, delivery time will differ for such orders.

But the ‘Recommendations’ tab shows dishes from various restaurants at a time.

To solve this issue, as soon as the user selects one dish he wants to eat, the results narrow to other dishes from that restaurant only (same as that of the selected dish) and he gets a trigger to go to the restaurant’s main menu.

Results narrow to dishes of selected restaurant | Trigger to go to that restaurant’s menu


Job: I am a vegetarian. I am only looking for indian full meals. I would like to have some desserts also. Get me there asap. No confusion.

I can narrow down to results I want using filters.

Results filtered to vegetarian | Tabs narrowed to full meals, desserts and sides | Sorted by recos

4.The Search feature!

Job: I want to eat Dal Khichdi. Where should I eat it from? Which restaurant makes the best? I search.

I get cards for dishes across restaurants. I can compare the results based on my priority either quality, price or delivery time. (Cheap, Good, Quick)

Kosho Restaurant has the best and cheapest Dal Khichdi

Here is the marvel prototype. Use the blue indicators to navigate.

“Thinking in products helps understanding the user experience of a product as a whole; not purely as Interaction- and Visual- Design of features. They can make a product beautiful, easy-to-use, delightful or make it stand out in the competition, though they can’t make the product meaningful.”

Somehow we knew, the challenge was not about making beautiful design. It was to test our thought process, out-of-the-box thinking ability, how we approach and solve real problems, how we work under time constraints and how we come to final product.

I literally fell in love with the problem. It took me 6 days to come to the idea of ‘Recommended Dishes.’ But I was really happy with the approach and learning in the process. I use story-matrix every time now.

The whole design using sketch and the prototype was made only on the last night. And I am really proud of it!

I got the tag for Best Project among all the Freshers.

Cheers! :)

You can find me tweetin’ at aayush_jain28 or reach out to me via



Aayush Jain
Aayush Jain Portfolio | Product Designer - UI/UX. Currently @Jupiter | Previously @Housing, @healoy, @cruxintelligence. ❤~ Storytelling