Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Why BaaS is crucial to early stage startups

342 views

Published on

Developing a mobile app can be time-consuming and frustrating -- writing server-side code, handling and scaling servers, designing APIs, all the while designing exceptional user experience. This presentation deck will help you understand the basics of serverless app development, and how it’ll save you and your team time and reduce development overhead.

Check out our open source serverless framework Skygear.io

Questions? Ask us anything at hello@skygear.io

Published in: Engineering
  • Be the first to comment

Why BaaS is crucial to early stage startups

  1. 1. Why Backend-as-a-Service (BaaS) is crucial David Ng, Product & Growth at Oursky to early stage startups and frontend developers
  2. 2. Agenda • What is BaaS • Features of BaaS and how does it help • Popular BaaS and comparison
  3. 3. Banana World My app idea
  4. 4. Startup’s worries
  5. 5. Develop an MVP A core component of Lean Startup methodology is the Build-Measure-Learn feedback loop
  6. 6. THE LEAN STARTUPMETHODOLOGY “Work Smarter, Not Harder”
  7. 7. THE LEAN STARTUPMETHODOLOGY The question is not "Can this product be built?" Instead, the questions are "Should this product be built?" and "Can we build a sustainable business around this set of products and services?"
  8. 8. THE LEAN STARTUPMETHODOLOGY The question is not "Can this product be built?" Instead, the questions are "Should this product be built?" and "Can we build a sustainable business around this set of products and services?"
  9. 9. BaaS Backend-as-a-Service
  10. 10. What is BaaS? • Pre-built, cloud hosted components for developing mobile application backends. • Reduce the time and complexity required to build mobile applications. • Allow developers to focus on core features instead of low-level tasks.
  11. 11. For whom? • Indie developers • Startups • App Vendors • Enterprise
  12. 12. BaaS Features • Data Store API for storage on cloud • File storage • User Authentication • Push Notifications • Secure Connectivity • Social Integration • Dashboard / UI
  13. 13. Auth Push Chat CloudDB Pubsub Cloud Functions CMS BaaS Features
  14. 14. Sign Up / Login • Username / email / phone number sign up • Supported Platforms of Social Login Auth
  15. 15. SMS verification Auth
  16. 16. User Profile Auth
  17. 17. User Dashboard Auth
  18. 18. Push Notification Editor Push
  19. 19. Schedule Push Notification Push
  20. 20. Chat • Group / DM Conversations • Real time receive message in callbacks • Send Message / Video / Sounds • Chat History • Unread count • Recipient status • Push notification • Typing indicators • End-to-end encryption with Signal Protocol Chat
  21. 21. Create Conversation Chat
  22. 22. Load message history Chat
  23. 23. Send a message Chat
  24. 24. Send Photos and Video Chat
  25. 25. CloudDB • Synchronize your data to the cloud • Easy to save and query data with integrated SDKs • Flexible as Document-based DB with the power of relational DB • Fully managed and built for reliabilty CloudDB
  26. 26. CloudDB • Sample Code of CRUD • Create a record const note = new Note({ 'content': 'Hello World' }); skygear.publicDB.save(note); // Batch Create skygear.publicDb.save([note1, note2, note3, note4, note5]); CloudDB
  27. 27. CloudDB • Sample Code of CRUD • Read a record const query = new skygear.Query(Note); query.greaterThan('importance', 10); query.addDescending('importance'); query.limit = 10; skygear.publicDB.query(query).then((records) => { console.log(records) }, (error) => { console.error(error); }) CloudDB
  28. 28. Pubsub Channel 1 Subscriber Publisher Publisher Subscriber Subscriber Channel 2 subscription event Pubsub
  29. 29. Cloud Functions • Auto scaling backend for you API • Simple to manage and build with function based API Cloud Functions
  30. 30. Cloud Functions • Write custom business logic on backend • Micro-services architecture • Trigger Cloud Functions in various ways Cloud Functions
  31. 31. Cloud Functions • Applying the cliched 80-20 rule. • Covered 80% of the features which one requires on the server side for App development. • For remaining 20% features, you may want to run your custom code on the cloud. Cloud Functions
  32. 32. CMS • Simple installation • Great support on data viewer: Filter, search and sort the records • Send push notifications via CMS • Customization available CMS
  33. 33. CMS • Instant web-based CMS dashboard for business users • Configuration of which DB tables / columns to show • Content type support • Localization support • Versioning support • Audit Log • Role Based Access Control • Approval Workflow CMS
  34. 34. BaaS Types • Cloud BaaS • Cloud Hosted Solution • Open source BaaS • An on-premise offering which is typically Free and Open Source in nature
  35. 35. BaaS Providers • Parse.com • Kinvey • Kii Cloud • Google Firebase
  36. 36. Kinvey • Founded in 2010 • Rich platforms support • Targeted for Enterprise
  37. 37. Kinvey
  38. 38. Kinvey
  39. 39. Parse • Acquired by Facebook in April of 2013 (100k apps as in June 2013) • Shut down hosted solution and open source in January of 2016 • Supporting many client platforms (.NET, ActionScript, Java, Qt, Ruby, PHP, Python and more)
  40. 40. Parse parse.com (2012)
  41. 41. Firebase • Focus: Realtime data synchronization • Founded in 2011 • Acquired by Google in October of 2014
  42. 42. Firebase
  43. 43. Skygear • Started in Hong Kong in 2014 • Support Web / iOS / Android / Hybrid apps • Open source + hosted solution
  44. 44. Skygear
  45. 45. Skygear • Auth: User management, signup / login • Push Notifications: Sending in-app push, retaining users • Chat: Embed professional chat features into your app fast • Cloud DB: Synchronize your data to the cloud • Pubsub: Broadcasting real time message • Cloud Functions: Extend your backend with customization • CMS: Instant web-based CMS dashboard, view and edit data
  46. 46. Detail comparison Skygear Parse Backend Kinvey Firebase Data Storage Yes, PostgreSQL with MongoDB-like interface and auto-migration Yes, MongoDB Yes Yes, JSON Tree based User Management Yes Yes Yes Yes Cloud Code Yes Yes Yes (Business Logic Code) No Dashboard Yes Yes Yes Yes Push Yes Yes Yes Yes Real Time Pubsub and Query subscription No / Live Query No Yes Analytics No No Yes Yes File Storage Yes Yes Yes Yes API Integration Yes No Yes No Hosting Open source / On- premise / Managed Cloud Open source deployment Managed Cloud Managed Cloud Platform Web, Android, iOS and IoT Web, Android, iOS and IoT Web, iOS, Android, Windows, REST API iOS, Android, Web Best for Most kind of apps MVP apps B2B, B2E Apps Realtime communication apps
  47. 47. How to choose a BaaS? • Depends on your project requirement and features. • Aware of the costs you will incur in using the service. • Take close look at the documentation. • Is there any Supporting Service.
  48. 48. Conclusion • Saves Time : Utilising existing tools from BaaS. • Go-to-market time reduced : You don’t need a backend developer to code your app and connect it to database. • Richer app : You have a much richer apps built on your BaaS. • Saves few hires : Using BaaS is like hiring 10 best backend hackers.
  49. 49. THE LEAN STARTUPMETHODOLOGY “Work Smarter, Not Harder”
  50. 50. Please feel free to ask any question. Thank you
  51. 51. Feel free to come to me and exchange a name card. I’m happy to share you the slides
  52. 52. A B O U T U S Wespecialiseincreatingdigitalproductswithgreatexperiences 2008 founded in 40 talented designers and developers 2 studios in Hong Kong and Taipei
  53. 53. Apple featured our apps LabelboxGif.cam Spentable

×