SlideShare a Scribd company logo
1 of 20
Building Mobile Platforms for Massive Scale 
and Differentiated User Experience 
Regunath B, Principal Architect, Flipkart 
Amar Nagaram, Sr. Engineering Manager, Flipkart
Retail App (there are so many...) 
 Search and 
navigation 
 View product, 
reviews 
 Buy 
 Track status 
 Social 
integration 
 Zoom, Bar-code 
scan
eBook App (not a common app...) 
 Search, browse, 
read sample 
 Buy, read from 
multiple devices 
 Gesture interface 
 Sync reading 
location, offline 
mode 
 Dictionary, notes
slashn Event App(why app..?) 
 Location, Schedule, 
Speakers 
 QR code event pass 
 Customize schedule 
 Rate presentations
Why Build Apps? 
• Anytime, anywhere access (mostly) 
• Growth in smart phone user base 
• Mobile internet(3G, 2G) reach wider than 
desktop(DSL) 
• Better personalization 
• Gesture based user experience 
• More secure (2 Factor authentication) 
• Simpler checkout 
Adoption @ Flipkart : >20% of orders placed and growing
Attempt1 : Building Scalable and 
Differentiated User Experience
Standards and Productivity 
Stacks 
- Hybrid views (HTML5) for portability 
- Standard navigation 
- Quick to develop interactions 
- Web API 
- Wrapper based integration with 
backend systems 
- Push Notifications(StackMob, AirShip) - Offline experience 
- Data availability across devices 
- Cloud data service (StackMob, 
OpenMobster)
Ratings & Reviews(then)
Sub-optimal User Experience 
• Software on Device : Responsiveness of app, 
Resource usage 
• Network : Ability to deal with slow/broken 
network connectivity 
– Latencies of services located in far of geographies 
•e.g. 3 seconds to exchange 2K data using StackMob 
• API Platform : Latencies, Fault tolerance 
• Engagement : Notifications, Usage 
– Relevance of Notifications 
– Tracking installs, failures in accessing data
Attempt2 : Building Scalable and 
Differentiated User Experience 
Why User Experience Matters 
(across platforms, networks, features, time)
Cue the Numbers 
• Only 16% of users return to an app that fails to 
load fast 
• Ideal app launch time : 2 seconds 
• Average Indian network data speed : 0.9 mbps 
• API Platform latencies : has to be < 500ms 
 Scale fast 
 Install base : 1 M Android installs in 6 months 
 Traffic growth : 75% MoM 
 Per user engagement growing MoM
Architecture decisions 
• Native device user interface 
• Server controlled layouts – A/B configurable 
– Page composition using reusable widgets 
• Fault-tolerant, parallel service calls 
• Availability vs. Consistency tradeoffs 
– Distributed and local caches 
• Prevent cascading failures 
– Timeouts, Threadpools control resource usage 
• Ability to operate in disconnected mode 
– Offline data store, sync support
Architecture decisions 
• User experience on slow networks 
– Low resolution images, preference for text over 
image 
• Content specific user engagement 
– Deep linked Push Notifications 
– In-app notifications 
• Data driven decision making, features 
– Usage information, Performance statistics
Stacks Optimized for User 
Experience 
- Native views with optimized rendering 
- Gesture navigation 
- Fluid, friction free interactions 
Jetty, Lego, Phantom FlipCast Notifications FlipSync Offline mode 
- Mobile Gateway/API 
- Transparent integration into 
other backend systems 
- Resilience, Low latency 
execution 
- Multicast (Targeted) 
- Personalized 
- Platform agnostic 
- Interactive 
- Context sensitive 
- 
- Disconnected mode 
- Near real-time sync 
- Data availability across 
devices & web 
Hyperion analytics 
- Usage information 
- Errors/crashes 
- Performance statistics 
- Soft real-time trends 
- Feedback/insights
APIs on Lego, Phantom 
REST Controllers 
PageBuilder PageBuilder PageBuilder 
WidgetBuilder WidgetBuilder WidgetBuilder 
Handler 
Repository 
- Jetty Http Interface 
- MVC controllers 
- Lego libraries 
- MVC model builders 
- Futures used in 
Scatter/Gather data read 
patterns 
- Phantom Resilience layer 
- Availability knobs : timeouts, 
fallbacks, throttling 
- Real-time monitor 
Proxy Command
Operating the API Platform – 
Phantom Console 
https://github.com/Flipkart/phantom (Flipkart OSS)
FlipCast Notifications 
• Supported Platforms 
– iOS, Android, Windows Phone 8 
• Features 
 Device register/unregister API 
 Configurable push message payloads 
 Automatic housekeeping for invalid 
devices 
 Automatic/Transparent retry and 
sidelining 
 Message history management 
 Pluggable data source (Default: 
MongoDB) 
 Automatic backpressure management 
 Unicast, Multicast & Broadcast Push 
API 
 Auto Batching for multicast & broadcast 
push 
• Tech stack 
– spray.io, akka.io 
– RabbitMQ 
– MongoDB
Hyperion Analytics 
• REST style Event API for data injestion 
• Replicated and Partitioned Kafka message queue 
• Distributed stream processor using Storm 
• HBase event data store 
• MongoDB Query data store 
• Search and aggregation API on query data store
Hyperion Analytics
Installs, Ratings & Reviews(now) 
Installs : 5,000,000 - 10,000,000 
Installs : 100,000 - 500,000

More Related Content

Viewers also liked

Authentication(pswrd,token,certificate,biometric)
Authentication(pswrd,token,certificate,biometric)Authentication(pswrd,token,certificate,biometric)
Authentication(pswrd,token,certificate,biometric)
Ali Raw
 

Viewers also liked (7)

Facebook style notifications using hbase and event streams
Facebook style notifications using hbase and event streamsFacebook style notifications using hbase and event streams
Facebook style notifications using hbase and event streams
 
Uid
UidUid
Uid
 
practical risks in aadhaar project and measures to overcome them
practical risks in aadhaar project and measures to overcome thempractical risks in aadhaar project and measures to overcome them
practical risks in aadhaar project and measures to overcome them
 
Srikanth Nadhamuni
Srikanth NadhamuniSrikanth Nadhamuni
Srikanth Nadhamuni
 
Aadhaar at 5th_elephant_v3
Aadhaar at 5th_elephant_v3Aadhaar at 5th_elephant_v3
Aadhaar at 5th_elephant_v3
 
Oss as a competitive advantage
Oss as a competitive advantageOss as a competitive advantage
Oss as a competitive advantage
 
Authentication(pswrd,token,certificate,biometric)
Authentication(pswrd,token,certificate,biometric)Authentication(pswrd,token,certificate,biometric)
Authentication(pswrd,token,certificate,biometric)
 

Recently uploaded

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 

Building mobile platforms for scale and differentiated user experience

  • 1. Building Mobile Platforms for Massive Scale and Differentiated User Experience Regunath B, Principal Architect, Flipkart Amar Nagaram, Sr. Engineering Manager, Flipkart
  • 2. Retail App (there are so many...)  Search and navigation  View product, reviews  Buy  Track status  Social integration  Zoom, Bar-code scan
  • 3. eBook App (not a common app...)  Search, browse, read sample  Buy, read from multiple devices  Gesture interface  Sync reading location, offline mode  Dictionary, notes
  • 4. slashn Event App(why app..?)  Location, Schedule, Speakers  QR code event pass  Customize schedule  Rate presentations
  • 5. Why Build Apps? • Anytime, anywhere access (mostly) • Growth in smart phone user base • Mobile internet(3G, 2G) reach wider than desktop(DSL) • Better personalization • Gesture based user experience • More secure (2 Factor authentication) • Simpler checkout Adoption @ Flipkart : >20% of orders placed and growing
  • 6. Attempt1 : Building Scalable and Differentiated User Experience
  • 7. Standards and Productivity Stacks - Hybrid views (HTML5) for portability - Standard navigation - Quick to develop interactions - Web API - Wrapper based integration with backend systems - Push Notifications(StackMob, AirShip) - Offline experience - Data availability across devices - Cloud data service (StackMob, OpenMobster)
  • 9. Sub-optimal User Experience • Software on Device : Responsiveness of app, Resource usage • Network : Ability to deal with slow/broken network connectivity – Latencies of services located in far of geographies •e.g. 3 seconds to exchange 2K data using StackMob • API Platform : Latencies, Fault tolerance • Engagement : Notifications, Usage – Relevance of Notifications – Tracking installs, failures in accessing data
  • 10. Attempt2 : Building Scalable and Differentiated User Experience Why User Experience Matters (across platforms, networks, features, time)
  • 11. Cue the Numbers • Only 16% of users return to an app that fails to load fast • Ideal app launch time : 2 seconds • Average Indian network data speed : 0.9 mbps • API Platform latencies : has to be < 500ms  Scale fast  Install base : 1 M Android installs in 6 months  Traffic growth : 75% MoM  Per user engagement growing MoM
  • 12. Architecture decisions • Native device user interface • Server controlled layouts – A/B configurable – Page composition using reusable widgets • Fault-tolerant, parallel service calls • Availability vs. Consistency tradeoffs – Distributed and local caches • Prevent cascading failures – Timeouts, Threadpools control resource usage • Ability to operate in disconnected mode – Offline data store, sync support
  • 13. Architecture decisions • User experience on slow networks – Low resolution images, preference for text over image • Content specific user engagement – Deep linked Push Notifications – In-app notifications • Data driven decision making, features – Usage information, Performance statistics
  • 14. Stacks Optimized for User Experience - Native views with optimized rendering - Gesture navigation - Fluid, friction free interactions Jetty, Lego, Phantom FlipCast Notifications FlipSync Offline mode - Mobile Gateway/API - Transparent integration into other backend systems - Resilience, Low latency execution - Multicast (Targeted) - Personalized - Platform agnostic - Interactive - Context sensitive - - Disconnected mode - Near real-time sync - Data availability across devices & web Hyperion analytics - Usage information - Errors/crashes - Performance statistics - Soft real-time trends - Feedback/insights
  • 15. APIs on Lego, Phantom REST Controllers PageBuilder PageBuilder PageBuilder WidgetBuilder WidgetBuilder WidgetBuilder Handler Repository - Jetty Http Interface - MVC controllers - Lego libraries - MVC model builders - Futures used in Scatter/Gather data read patterns - Phantom Resilience layer - Availability knobs : timeouts, fallbacks, throttling - Real-time monitor Proxy Command
  • 16. Operating the API Platform – Phantom Console https://github.com/Flipkart/phantom (Flipkart OSS)
  • 17. FlipCast Notifications • Supported Platforms – iOS, Android, Windows Phone 8 • Features  Device register/unregister API  Configurable push message payloads  Automatic housekeeping for invalid devices  Automatic/Transparent retry and sidelining  Message history management  Pluggable data source (Default: MongoDB)  Automatic backpressure management  Unicast, Multicast & Broadcast Push API  Auto Batching for multicast & broadcast push • Tech stack – spray.io, akka.io – RabbitMQ – MongoDB
  • 18. Hyperion Analytics • REST style Event API for data injestion • Replicated and Partitioned Kafka message queue • Distributed stream processor using Storm • HBase event data store • MongoDB Query data store • Search and aggregation API on query data store
  • 20. Installs, Ratings & Reviews(now) Installs : 5,000,000 - 10,000,000 Installs : 100,000 - 500,000