Hoppers implementation of a Mobile platform is described in detail. This architecture can be uses for any Mobile application that needs a Mobile APP, Web Services, and a Merchant Interface to manage content. Merchant Interface can be viewed as CMS which is light weight.
2. Mobile Platform for Social Gifting
Synopsis: The Social Gifting Mobile Platform designed and built by Hopper is described in this case
study. The Mobile Application on iPhone and Android as part of this platform are used by end users
to gift merchandise at events and sports events. The applications are designed to scale to millions
of end users
1. Introduction
A Silicon Valley startup approached us to build a Social Gifting and Re-Gifting platform with Mobile
application that runs on iPhone. The client had a very general idea about the product. They
understood the market and needed help with articulating and building a scalable product that
could be used by millions of subscribers.
Hopper helped the client in gathering requirements, defining the product, architecture, coding,
design, product management, release management, qa, data modeling, it infrastructure
management, and running the product 24x7 including it and application support.
2. Problem
The engagement was to build a mobile social gifting platform. It mainly targets individuals who
attend games at stadiums or any event to send and receive gifts from their friends from mobile
devices and web. Friends can be anywhere – ball game, event, or home. To send a gift, users can
either use mobile application on
iPhone, Android phones, Facebook, or Web. The receiver of the gift has to be registered on the
customer network and on a mobile device
Social gifting platform had to integrate with Facebook to add friends. The product was expected
supports direct friend invites from the mobile app or email.
The merchants offer gifts, deals, and offers through a merchant portal. The merchant content was
expected to be made available to the mobile phones and social media platform. The merchants
administer their content through a web portal.
3. Solution
Hopper product managers and engineers in collaboration with client team defined the product and
the architecture. The high level architecture is as below:
4. Each of the high level modules that comprise the Mobile Platform that were built by Hopper is
described below:
5. 3.1 IPhone Application
iPhone application will enable iPhone users to access the Social Gifting Network. The iOS
application was built as a native application to achieve the optimal user
experience and performance. It communicates with the Social Gifting Server through RESTFUL APIs
using HTTPS protocol. Social Network integration will be handled using Native SDKs provided for
IOS. Targeted minimum OS version is 5.1. User interface and User experience was developed by
adhering to the human interface Guidelines defined by Apple.
3.2 Android Application
The native Android application will enable Android users to access the Social Gifting Network. The
server interaction is through RESTFUL APIS. The user experience confirms to Android OS and
devices. The user experience is not much different for iOS, but the look and feel was similar to user
experience on any Android application.
3.3 Social Gifting Server
The server was defined as a set of well-defined public APIs that enable client applications to
interact with Social Gifting Network. The Restful API were developed using the REST architecture
and will be session-less. This will enable the application to scale. JSON was used as the payload
format for it light weight and limits the number of data packets – this is particularly useful when
cellular networks are jammed.
The MEMCACHE servers were used for optimal performance and caching. The friend network
(friends list) and activity feeds (gifts, updates, messages) tend to grow for the system has to
potentially support millions of users. To optimize the data performance and latency, caching both
on client and server were implemented.
To optimize faster response times load balancing at the server level was implemented and have the
ability to add hundreds of servers based on load dynamically. And load shedding can happen
dynamically during quiescent times.
4. Database
MySQL Cluster will be used as the Persistent layer. It will provide data to both the Server and the
CMS.
5. Content Management System (“CMS”)
6. CMS will provide the ability to perform administrative tasks such as Reporting and Monitoring.
CMS is designed to help merchants manage their deals, inventory, and sales. The reporting will
help them in making decisions about ad buying and promoting deals.
6. Web / Facebook Application
The consumer has the ability to interact with Social Gifting Platform either on Web or Facebook.
The functionality is similar to the mobile applications described above.