Digital Marketplace Platform for Chefs and Their Customers
We developed a scalable online platform connecting its users with professional chefs who cook restaurant-quality food at customers’ 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 originally appeared 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 services couldn’t offer the right option. That was Matthew’s light bulb moment when he came up with a completely new approach to food delivery, and an online dining services app 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 dedicating a full-cycle project team with developers, business analysts, project managers, and QA engineers for a number of similar Uber-like projects.
Marketplace Solution Based on the White Label Model
We designed our marketplace-based solution with the ability for scaling and branding it further by different business owners for various regions. The key USP of the solution was focused on the idea of not ordering takeaway food but inviting professional chefs to cook restaurant-quality meals right in the users’ kitchens. To date, we’ve already released on the market two standalone applications based on the White Label model — MyTable for the US market and Chefly for the Australian market. Both apps differ in design, branding, and certain UI elements.
The key idea of the application is to mark out two main user roles, namely:
- 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 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 our online dining services marketplace only after the MyTable or Chefly administrators check their professional certificates, run interviews, and assess 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 a 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 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 a dish or several, and cleans the space afterward.
Backend Administration and Integrations
Along with the mobile apps for iOS and Android devices, our custom software development agency created a backend administration panel. With it, the management of both web and mobile versions of digital dining services marketplace inasmuch as chefs’ approvals and their access to the app, order placements, and payment calculation.
We also integrated 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 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 card. 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 the initial application was a startup where requirements were likely to change during the development process, we chose the Agile methodology for the project, namely the Dynamic Systems Development Method (DSDM) that was more appropriate for the project 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 adding registration form, profile, map, filters, chats, etc.) and outlined the roadmap with possible changes. After each iteration, we would deliver a demo session for the client, showing the new functionality in real-time and discussing further updates.
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.
In the wake of the success of the original app, an Australian-based company ordered our team to develop a similar local online marketplace solution for chefs and their customers in terms of the White Label model under their personal brand and in a renewed design.