MyTable — App Development for Delivering New Food Experiences

MyTable is a food service delivery app connecting its users with professional chefs who cook restaurant-quality food at users’ homes.

Challenge

At the core of the MyTable startup was the idea of a convenient mobile service connecting professional chefs with people who wanted to taste delicious high-end food at home for an affordable price.

The startup was conceived when its would-be founder — Matthew Kelly — was watching a sports game with his friends at home and wanted to order some tasty food. Uber Eats, Seamless, Grubhub, or other food delivery service couldn’t offer the right option. That was Matthew’s light bulb moment when he came up with a completely new vision for such services, and MyTable was born.

The startup chose MBicycle as a befitting company to create the MyTable MVP for iOS and Android, as we had a proven experience of ramping up a full-fledged project team, including developers, business analysts, project managers, and QA engineers for another Uber-like startup — Loads of Time.

A New Approach to Food Delivery App Development as a Solution

The key USP of the solution was that the Diners don’t order takeaway food but invite professional chefs to cook restaurant-quality meals right in the Diners’ kitchens. As a competent provider of food delivery and other related app development services, MBicycle split the app user roles for this chef-hire solution as follows:

  • The Chefs can create and publish their profiles, describe their services and competencies, and find customers looking to order what they have on offer.
  • The Diners can download the MyTable application for iOS or Android devices, contact any chef they choose, place an order, pay for it, and review their experience.

Chef Approval and Scheduling Flows

Chefs are allowed to register with MyTable only after the MyTable team checks their professional certificates, runs interviews, and assesses the video footage of them at work. After successful registration, a chef is assigned the Chef role and the app users can start placing orders with him or her.

Chefs can create their personal events and indicate when they are available for hire. For this, they set up their work calendars (for example, marking they don’t take late-night orders), and indicate their hourly rates. Based on the rates and working time, the app automatically calculates the amount to be paid by the Diner.

Diner Registration and Ordering Flows

The other role in the application — the Diner — was intended for those ordering the Chefs’ services. When registering, Diners indicate the information about their kitchens and cooking equipment available, as well as their preferred cuisine (Italian, Japanese, etc.). Next, Diners can look up all the Chefs near them on an interactive map.

Diners can study Chefs’ profiles, check their ratings and menus, and place an order by indicating convenient date and time. Also, a Diner can start a chat with the chosen Chef to discuss the details.

Once the order is placed, the Chef receives the request with the information about the Diner’s kitchen, type of cuisine, chosen meal, and other details. The Chef can review the order and accept or reject it. After accepting the order, the Chef arrives at the Diner’s place, cooks the meal(s), and cleans the space afterwards.

Backend Administration and Integrations

Along with the mobile apps for iOS and Android devices, our development team created a backend administration panel. It enables the management of the MyTable website and applications, chefs approvals and their access to the app, order placements, and payment calculation.

We also integrated Instacart — a third-party service for buying groceries from various stores and delivering them to the Diner’s house before the Chef’s arrival. Diners can run this service right from the MyTable application and order the items from the list of ingredients that comes with each meal available for order.

To implement secure payments, we used the Stripe service. Once Chefs create their profiles, their Stripe accounts are set up automatically. Chefs can withdraw the money through Stripe to any banking cards. Diners also add their banking cards during the registration to pay for Chefs’ services.

For the chat module, we integrated the Applozic service. Diners can initiate a chat with a Chef directly. Chefs can only answer those Diners who have contacted them first.

Process

The project team consisted entirely of the MBicycle mobile app development outsourcing experts and included:

  • Project manager
  • Project team lead
  • Business analyst
  • Frontend developer
  • 3 backend developers
  • Android developer
  • 2 iOS developers
  • QA engineer
  • Designer

As MyTable was a startup and their requirements were likely to change during development, we chose the Agile methodology for the project, namely the Dynamic Systems Development Method (DSDM) that was more appropriate for our goals.

DSDM ensures on-time and on-budget delivery while allowing a swift implementation of changes to the project requirements. This approach is iterative and implies active and regular participation of both the client and the project team members.

We divided the scope of tasks into iterations (such as user registration, profile editing, map, filters, etc.) and outlined the roadmap with possible changes in each iteration. After each iteration, we would deliver a demo session for the client, showing the new functionality in real-time and discussing further updates.

MyTable mockups

Technologies & Tools

Programming languages

Java, Kotlin, Swift

Frontend

React

Architecture

MVVM

Database

Reddis, PostgreSQL

Third-party libraries & frameworks

Spring, Hibernate, Apache SOLR, AWS, AndroidX, LiveData, DataBinding, Dagger2, Android Jetpack, Kotlin Coroutines, Android SDK, Glide, Constraint Layout, Retrofit, Crashlytics, Alamofire, StompClientLib, Kingfisher

Results

After eight months of iterative project work, the MBicycle team provided MyTable with mobile applications for iOS and Android along with a backend administration panel. This solution allows users to get restaurant-quality food that is cooked right at their kitchens at a more affordable price than in restaurants — all in a few clicks and swipes.

Thanks to a powerful set of user-centric features, the MyTable app is gaining traction with its audience and breaking new grounds as a peerless alternative to current food delivery services.