Case Study - Ressy

Ressy provides a real-time capacity management platform for services business. It enables restaurants to push on-demand deals to users in real time, especially during non-peak hours. The users can avail the discounts through their smartphones. Ressy raised a seed funding of $400K. The application created a huge buzz among foodies and restaurateurs. The users get upto 50% off on their orders, while the restaurant owners see a steep rise in the number of orders.

The Challenge

Koustubh and Sagar, the founders of Ressy, were looking for technically sound, entrepreneurial techies to fulfil a unique requirement. They asked us to design a platform for providing real-time restaurant deals to users and gave us a deadline of 3 months.

Project Stages

•  Requirement gathering and analysis
•  Translation of business use cases into technical specifications
•  Selection of technology stack as per requirement and desired throughput
•  Backend architecture designing
•  Building a MVP

Development

We decided to follow the agile development process and started with requirement gathering and analysis. We surveyed the existing apps in the same segment, like OpenTable, Foodpanda, Zomato, and TinyOwl. We studied their design and flow structure. Minimum lag, fastest content delivery, and 100% uptime were the vitals of the backend technology, so we choose the Golang-based API server. We wrote the entire backend for User Application, Merchant App, and a basic dashboard APIs in 45 days.

Even though we were only building the MVP, we wanted to ensure that the stack supported a lot of traffic and was scalable. For example, we had to display the same image at multiple places, so we had to resize the images to all the required sizes. Plus, restaurant images are updated regularly, and the sales team wanted to onboard 1200+ restaurants from a single city. Resizing all the images to specific required sizes is a very CPU-intensive task, and storing all the images involves a huge storage cost, especially if all the restaurants in India are to be onboarded. So, we wrote a server that could resize the images on the fly and push it to CloudFront so that only the first fetch of the image would be slow and the ones after that would be super-fast because CloudFront keeps the cache of the images at the nearest available server to minimize the network response time.

We used various third-party servers to monitor the performance of our backend. Examples: we used New relic to monitor the API performance, Bugsnag for tracking the bugs, and papertrail for tracking the real time log of the server. We kept our average response time to around 100 ms.

Technology Stack

Android SDK
Golang
MongoDB

Tools

Android Studio
Sublime Text
Git

Services

Go
React
GraphQL

Product

Ressy offered more than 1000 deals every day and is affiliated with more than 1200 restaurants across Pune and Mumbai. They’ve raised a seed funding of $400K and have featured in media as one of the most promising startups in India. In 2017, Ressy was acquired by the Bangkok-based restaurant reservation app Eatigo.

"We worked closely with Fstack right from the inception of Ressy App for almost a period of 2 years. Kumar was always keen on understanding the vision of the product first and then executing the technology behind it. Inspite of me being a non-technical person, he made me feel extremely comfortable while he explained the product using layman terms and executed a top-of-the-line final tech product."

Koustubh Rajepandhare

CEO, Ressy

© 2018 fstack/all rights reserved