For my last assignment of this quarter, I was “hired” as a lead mobile developer and had to provide recommendations on BuySell Inc’s buying and selling application, research market competitors (LetGo, Mercari, and OfferUp) and choose a Cloud Service Provider and recommend at least three MBaaS services for the new application. I had to also list the requirements and scope of the work. It seems persuasive, yet professional.
To: Chief Technology Officer
From: Elyse Segebart
Date: December 13, 2019
Re: MBaaS Services for BuySell Application
Chief Technology Officer,
After careful research and consideration, I have determined BuySell, Inc.’s BuySell application will benefit from using a Cloud Service Provider (CSP) and Mobile Backend as a Service (MBaaS) services to compete with other applications in the market. This will allow BuySell Inc. to get the application running quickly while reducing cost of implementing a mobile backend infrastructure. The business problem lies in which CSP to choose and what MBaaS services will be necessary for the application. After outlining the scope and requirements of the application, I will provide the MBaaS services I recommend and their necessity.
BuySell requirements scope includes:
- Advertise and browse products and services
- a. Sellers advertise products and services using a variety of media
- b. Buyers browse a catalog of advertised products and services grouped into common categories and subcategories such as clothing, electronics, household, handmade, etc.
- Connect buyers and sellers
- 2.a.Buyers interested in purchasing an item from a seller will be able to communicate with each other about said item
- Transactions to buy an item will be completed in an easy and secure environment
- Shipping options provided for buyer to include shipping or offer Free shipping by paying the shipping out of purchase amount
- 4.a. Prepaid label will be provided for all shipped transactions
- Users will be able to provide feedback on the buying and selling experience
Scope does not include:
- Methods to verify sellers (such as ID check, phone number, or badges indicating factors such as fast shipper, member since, or quick responder)
- Other payment methods such as PayPal or Stripe integration
- Moneyback guarantee or Purchase Protection on items bought and sold within the application
- Targeted ads within application
In reviewing different CSPs such as Amazon AWS, Google Firebase, and Microsoft Azure App Service, I have determined Google Firebase will be the best option since it is designed to be scalable and user-centric while aiding in creating the best user experience. Firebase provides a real-time database platform and a real-time database management API so there is no need for a backend server, the ability to sync real time data in the application, authentication, cloud storage, analytics, and crash reports.
The MBaaS services I would recommend for this application are:
- Firebase Authentication. Signing up and signing in are an integral part of the user experience and should be made as simple as possible with security being a forefront consideration. Firebase makes this easy to integrate different methods of signing up and signing in using phone authentication, email and password, or social media authentications in 10 lines of code or less.
- Firebase Real-Time Database. The application will include messaging between users and listings that include a variety of media that will need to be stored. The Real-Time Database is a good choice since it stored in a NoSQL database using JSON and is hosted on the cloud. It integrates with Firebase Authentication making the security model very intuitive.
- Firebase Cloud Storage. Photos and messaging will be hosted on the cloud and storing it in the cloud would be a logical option. Using cloud storage will improve the user experience by making data efficient and accurate while improving bandwidth.
- Google Analytics for Firebase SDK. Metrics are a very useful and integral part of improving business and optimizing applications. Metrics may include user demographics, app engagement, or user retention. There is unlimited reporting for up to 500 unique events for free and across all devices for web, iOS, and Android.
- Firebase Crashlytics. Making a quality application will enhance user experience. This service will help identify and categorize errors at runtime and determine which bugs require immediate attention. This will also enhance productivity by using resources efficiently.
If you have any questions or concerns regarding my recommendations, I encourage you to contact me and we can review them together.
Lead Mobile Application Engineer
Cell: (555) 222-3333