SlideShare a Scribd company logo
Lesson learned in developing UI and mobile
apps blibli.com
Ifnu, 8 April 2016
What are we going to talk today?
• Lesson learned in developing UI and mobile
apps blibli.com
• List of lesson I learn during my time at
blibli.com
• Lesson developing UI
• Lesson developing mobile apps
Agenda
• Who am I?
• What we learn about customer
• Then vs Now
• Lesson 1 : People
• Lesson 2 : Process
• Lesson 3 : Solr
• Lesson 4 : Cache
• Lesson 5 : Microservices
• Lesson 6 : Web UI
• Lesson 7 : Mobile First
• Lesson 8 : Content
Who am I?
• Ifnu Bima
• Ilmu Komputer IPB
• Join blibli in 2012
• Was working for Deustche Bank Singapore since 2010
• Employee no 69
• Engineers no ~13
• Development Manager
– blibli.com Web UI
– Mobile Apps : Android, iOS, Windows Phone
– Content Management System
– Search
– Product Discovery : Wishlist, Product Review
What we learn about customer
• Fast UI
– Speed & Performance
• Website stay up during promotion and flash sale
– Scalability & Elasticity
• Consistently good user experience
– Great UI/UX
– Timely order delivery
– Original and high quality product
• New features
– Rapid Deployment
– Continuous Delivery
Then vs Now
• Based on 4 things that customer have, how do
we improve over time
• Things we learn along the way
Blibli UI circa 2012
Lesson learned in developing UI and mobile apps blibli.com
Blibli architecture circa 2012
Store Front
Back officeMerchant
Blibli GUI application architecture 2016
Lesson 1 : People
• Hiring is the most important job in growing
company
– 800+ people
– 150+ engineers
• Right person with knowledge, skill and
attitude
• Do not compromise on quality
• Hire someone better than you, at least when
you are at their age
Lesson 2 : Process => Product development
Product
Program
Manager
Development
Manager
Product
Manager
1. Product Manager (PM)
– Defining the right product
2. Development Manager
(DM)
– Building the product right
3. Program Manager (PgM)
– Cross-functional executioner
Source: Inspired: How To Create Products Customers Love
Lesson 2 : Process => Agile, XP and Scrum
• Scrum role is perfectly fit with product
development role
• Release fast
• Test Driven Development, 90% code coverage
• Refactor often
Lesson 3 : SOLR
• Product catalog and category
• Full text search on product
– Very vast full text search compared to database
– Relevancy score to sort search result
• Filtering and Faceting
• Very fast
• Elasticsearch as alternative
• CQRS (Command Query Responsibility
Segregation) pattern
Lesson 4 : Cache
• Redis
– User session
– Very fast for small and lots of data
– Turn off disk flush, it can make server disk IO 100%
and response timeout while flusing
• Guava
– Cache content from CMS
– In memory cache
– Background cache reload
• Varnish
– Cache HTML in front of app server
– Same content for all user, cannot do personalization
Lesson 5 : Microservices
• Small team working on product
• Independence release
• Cross functional team vs Siloed functional
team
• GUI application as orchestrator
Lesson 6 : Web UI
• Responsive vs Adaptive
• AngularJS is great
• Browsing through mobile web then purchase
through desktop web
• Image is our biggest enemy
– 95+% traffic is image
– Compress, resize and optimize it reduce 50%
bandwith
– Image operation need very high CPU
• Client side performance is much much harder
than server side performance
Lesson 7 : Mobile First
• Based on our traffic, there are 3 peak each every day: morning,
afternoon and night
• Morning and afternoon from desktop, Night from mobile web &
apps
• Only office worker is using desktop
• To reach majority of Indonesia user, we need first class mobile web
and apps
• Mobile apps conversion is 7x web conversion
• 70% web traffic goes to mobile web
• 80% transaction happen on desktop web
• We want user to use mobile apps as much as possible
Lesson 7 : Mobile First
• Native is first choice
• Others if you constrained by budget or team
size
• More engineers currently working in mobile
apps than web
Lesson 8 : Content
• Banner and promotion page
• Different content for different channel : web
and mobile apps
• Control UI from CMS
• Layout and content saved in database, no
deployment while update it
THANK YOU

More Related Content

What's hot (18)

PPTX
DeveloperDeveloperDeveloper! Sydney 2012
kittenthecat
 
ODP
Synapse india reviews on cross plateform mobile apps development
saritasingh19866
 
PPTX
Satisfying Business and Engineering Requirements: Client-server JavaScript, S...
Jason Strimpel
 
PDF
Google Developers Group Cloud Los Angeles, Progressive Web Applications by Ta...
Marie Smith
 
PPTX
Collaboration Tools and Methods in Software Development
Stefan Fodor
 
PPTX
Career Options for CS/IT/IS graduates
Alfred Jett Grandeza
 
PPTX
Presentation
Nikhilesh Sharma
 
PPTX
MOBILE QUESTIONS & ANSWER WEBSITE
Vishal Mittal
 
PPTX
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Jani Tarvainen
 
PPTX
User Experience Prototyping
Catapult New Business
 
PPT
Php ey final
John Needham
 
PPTX
Service Workers: no more offline!
maciej-adamczak
 
PDF
The latest tools for developing your IBM i systems
Proximity Group
 
PDF
Cross platform engineering - Lessons Learned (Michael Asimakopoulos, Valadis ...
GreeceJS
 
PDF
Tech a Break Sudhanshu - Mobile Apps
devpin
 
PDF
The headless CMS
Érico Andrei
 
PDF
2014 Picking a Platform by Anand Kulkarni
European Innovation Academy
 
PDF
Cross Platform Mobile Development
Manesh Lad
 
DeveloperDeveloperDeveloper! Sydney 2012
kittenthecat
 
Synapse india reviews on cross plateform mobile apps development
saritasingh19866
 
Satisfying Business and Engineering Requirements: Client-server JavaScript, S...
Jason Strimpel
 
Google Developers Group Cloud Los Angeles, Progressive Web Applications by Ta...
Marie Smith
 
Collaboration Tools and Methods in Software Development
Stefan Fodor
 
Career Options for CS/IT/IS graduates
Alfred Jett Grandeza
 
Presentation
Nikhilesh Sharma
 
MOBILE QUESTIONS & ANSWER WEBSITE
Vishal Mittal
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Jani Tarvainen
 
User Experience Prototyping
Catapult New Business
 
Php ey final
John Needham
 
Service Workers: no more offline!
maciej-adamczak
 
The latest tools for developing your IBM i systems
Proximity Group
 
Cross platform engineering - Lessons Learned (Michael Asimakopoulos, Valadis ...
GreeceJS
 
Tech a Break Sudhanshu - Mobile Apps
devpin
 
The headless CMS
Érico Andrei
 
2014 Picking a Platform by Anand Kulkarni
European Innovation Academy
 
Cross Platform Mobile Development
Manesh Lad
 

Viewers also liked (16)

ZIP
Blibli.com[kiyosaki]
Edo Alfendo
 
PDF
java-fundamental-dan-java-web-blibli-dot-com-ilmu-komputer-IPB
ifnu bima
 
PPTX
E-Commerce blibli.com
Forum Tunas Bangsa (FORTUNA)
 
PDF
Blibli.com
indahpadang92
 
PDF
e commerce pada perusahaan lazada indonesia
Sammuel Des Andre
 
PDF
Development di Blibli
ifnu bima
 
PPTX
Journey To The Front End World - Part2 - The Cosmetic
Irfan Maulana
 
PPTX
Journey To The Front End World - Part3 - The Machine
Irfan Maulana
 
PDF
What Great eCommerce Service Leaders Know & Do - A Modria Webinar
Mike Greene
 
PPTX
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
Irfan Maulana
 
PPTX
Irfan Maulana - Career Journey
Irfan Maulana
 
PPTX
Email Marketing for ECommerce: Creating personalized experiences
Sita Kalluri
 
PPT
Working cast &die shams new1
nudii
 
PPT
Imc clas mild final
Bella Ruiz Pickmans
 
PPTX
Analisis lingkungan internal
Faridatul Fitriyah
 
PPTX
Best buy A marketing excellence,concepts of managing retailing,wholesaling an...
deepakearth
 
Blibli.com[kiyosaki]
Edo Alfendo
 
java-fundamental-dan-java-web-blibli-dot-com-ilmu-komputer-IPB
ifnu bima
 
E-Commerce blibli.com
Forum Tunas Bangsa (FORTUNA)
 
Blibli.com
indahpadang92
 
e commerce pada perusahaan lazada indonesia
Sammuel Des Andre
 
Development di Blibli
ifnu bima
 
Journey To The Front End World - Part2 - The Cosmetic
Irfan Maulana
 
Journey To The Front End World - Part3 - The Machine
Irfan Maulana
 
What Great eCommerce Service Leaders Know & Do - A Modria Webinar
Mike Greene
 
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
Irfan Maulana
 
Irfan Maulana - Career Journey
Irfan Maulana
 
Email Marketing for ECommerce: Creating personalized experiences
Sita Kalluri
 
Working cast &die shams new1
nudii
 
Imc clas mild final
Bella Ruiz Pickmans
 
Analisis lingkungan internal
Faridatul Fitriyah
 
Best buy A marketing excellence,concepts of managing retailing,wholesaling an...
deepakearth
 
Ad

Similar to Lesson learned in developing UI and mobile apps blibli.com (20)

PPTX
Beyond App Development
Osman Celik
 
PPTX
Beyond App Development
Mobile İstanbul
 
KEY
Why Do Mobile Projects Fail?
Indiginox
 
PPTX
Rich Internet Application
Manoj Chaurasiya
 
PDF
Making mobile apps with web technology (revised)
Manyoung Cho
 
PDF
GWT Architectures and Lessons Learned (WJAX 2013)
pgt technology scouting GmbH
 
PDF
What is Happening in the "App Factory"?
Ciklum Ukraine
 
KEY
Creating Next-Generation ADF Mobile Applications
Brian Huff
 
PDF
Mse sept13 (3/3)
IIITA
 
PPTX
Flash vs. HTML5 - by Omer Gartzman
Omer Gartzman
 
KEY
Michael Slater Mobile Opportunity
NorthBayWeb
 
KEY
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
KeyLimeTie
 
PPTX
Optimized mobile apps
Madhuri Chopurala, CSPO, CSM
 
PPTX
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
Sencha
 
PPTX
Mobile App vs Mobile Web Development
TAG_education
 
PDF
Building your Mobile App: Budget, Planning and Best Practices
Philippe Dumont
 
PDF
Mobindustry presentation
Tatiana Deriughina
 
PPTX
Mobile presentation - Sydney Online Retailer - 26 Sep 2011
Craig Sullivan
 
PDF
The Forest Before The Trees: The Future of Web App Design
mikescopino
 
PDF
Android Application Development Online Training.pdf
SpiritsoftsTraining
 
Beyond App Development
Osman Celik
 
Beyond App Development
Mobile İstanbul
 
Why Do Mobile Projects Fail?
Indiginox
 
Rich Internet Application
Manoj Chaurasiya
 
Making mobile apps with web technology (revised)
Manyoung Cho
 
GWT Architectures and Lessons Learned (WJAX 2013)
pgt technology scouting GmbH
 
What is Happening in the "App Factory"?
Ciklum Ukraine
 
Creating Next-Generation ADF Mobile Applications
Brian Huff
 
Mse sept13 (3/3)
IIITA
 
Flash vs. HTML5 - by Omer Gartzman
Omer Gartzman
 
Michael Slater Mobile Opportunity
NorthBayWeb
 
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
KeyLimeTie
 
Optimized mobile apps
Madhuri Chopurala, CSPO, CSM
 
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
Sencha
 
Mobile App vs Mobile Web Development
TAG_education
 
Building your Mobile App: Budget, Planning and Best Practices
Philippe Dumont
 
Mobindustry presentation
Tatiana Deriughina
 
Mobile presentation - Sydney Online Retailer - 26 Sep 2011
Craig Sullivan
 
The Forest Before The Trees: The Future of Web App Design
mikescopino
 
Android Application Development Online Training.pdf
SpiritsoftsTraining
 
Ad

More from ifnu bima (11)

PPTX
Northstar Metrics and OKR
ifnu bima
 
PPTX
A brief history of metrics
ifnu bima
 
PPTX
Clean code
ifnu bima
 
PPTX
IT Today IPB 2017 : bring new era of business with e-commerce
ifnu bima
 
PDF
solr @ blibli
ifnu bima
 
PPTX
Java Technology
ifnu bima
 
PDF
Spring Mvc
ifnu bima
 
PDF
Rembug Presentation
ifnu bima
 
PDF
IT Carier
ifnu bima
 
PDF
Free Software Foundation,FSF,Opensource
ifnu bima
 
ODP
Spring Mvc,Java, Spring
ifnu bima
 
Northstar Metrics and OKR
ifnu bima
 
A brief history of metrics
ifnu bima
 
Clean code
ifnu bima
 
IT Today IPB 2017 : bring new era of business with e-commerce
ifnu bima
 
solr @ blibli
ifnu bima
 
Java Technology
ifnu bima
 
Spring Mvc
ifnu bima
 
Rembug Presentation
ifnu bima
 
IT Carier
ifnu bima
 
Free Software Foundation,FSF,Opensource
ifnu bima
 
Spring Mvc,Java, Spring
ifnu bima
 

Lesson learned in developing UI and mobile apps blibli.com

  • 1. Lesson learned in developing UI and mobile apps blibli.com Ifnu, 8 April 2016
  • 2. What are we going to talk today? • Lesson learned in developing UI and mobile apps blibli.com • List of lesson I learn during my time at blibli.com • Lesson developing UI • Lesson developing mobile apps
  • 3. Agenda • Who am I? • What we learn about customer • Then vs Now • Lesson 1 : People • Lesson 2 : Process • Lesson 3 : Solr • Lesson 4 : Cache • Lesson 5 : Microservices • Lesson 6 : Web UI • Lesson 7 : Mobile First • Lesson 8 : Content
  • 4. Who am I? • Ifnu Bima • Ilmu Komputer IPB • Join blibli in 2012 • Was working for Deustche Bank Singapore since 2010 • Employee no 69 • Engineers no ~13 • Development Manager – blibli.com Web UI – Mobile Apps : Android, iOS, Windows Phone – Content Management System – Search – Product Discovery : Wishlist, Product Review
  • 5. What we learn about customer • Fast UI – Speed & Performance • Website stay up during promotion and flash sale – Scalability & Elasticity • Consistently good user experience – Great UI/UX – Timely order delivery – Original and high quality product • New features – Rapid Deployment – Continuous Delivery
  • 6. Then vs Now • Based on 4 things that customer have, how do we improve over time • Things we learn along the way
  • 9. Blibli architecture circa 2012 Store Front Back officeMerchant
  • 10. Blibli GUI application architecture 2016
  • 11. Lesson 1 : People • Hiring is the most important job in growing company – 800+ people – 150+ engineers • Right person with knowledge, skill and attitude • Do not compromise on quality • Hire someone better than you, at least when you are at their age
  • 12. Lesson 2 : Process => Product development Product Program Manager Development Manager Product Manager 1. Product Manager (PM) – Defining the right product 2. Development Manager (DM) – Building the product right 3. Program Manager (PgM) – Cross-functional executioner Source: Inspired: How To Create Products Customers Love
  • 13. Lesson 2 : Process => Agile, XP and Scrum • Scrum role is perfectly fit with product development role • Release fast • Test Driven Development, 90% code coverage • Refactor often
  • 14. Lesson 3 : SOLR • Product catalog and category • Full text search on product – Very vast full text search compared to database – Relevancy score to sort search result • Filtering and Faceting • Very fast • Elasticsearch as alternative • CQRS (Command Query Responsibility Segregation) pattern
  • 15. Lesson 4 : Cache • Redis – User session – Very fast for small and lots of data – Turn off disk flush, it can make server disk IO 100% and response timeout while flusing • Guava – Cache content from CMS – In memory cache – Background cache reload • Varnish – Cache HTML in front of app server – Same content for all user, cannot do personalization
  • 16. Lesson 5 : Microservices • Small team working on product • Independence release • Cross functional team vs Siloed functional team • GUI application as orchestrator
  • 17. Lesson 6 : Web UI • Responsive vs Adaptive • AngularJS is great • Browsing through mobile web then purchase through desktop web • Image is our biggest enemy – 95+% traffic is image – Compress, resize and optimize it reduce 50% bandwith – Image operation need very high CPU • Client side performance is much much harder than server side performance
  • 18. Lesson 7 : Mobile First • Based on our traffic, there are 3 peak each every day: morning, afternoon and night • Morning and afternoon from desktop, Night from mobile web & apps • Only office worker is using desktop • To reach majority of Indonesia user, we need first class mobile web and apps • Mobile apps conversion is 7x web conversion • 70% web traffic goes to mobile web • 80% transaction happen on desktop web • We want user to use mobile apps as much as possible
  • 19. Lesson 7 : Mobile First • Native is first choice • Others if you constrained by budget or team size • More engineers currently working in mobile apps than web
  • 20. Lesson 8 : Content • Banner and promotion page • Different content for different channel : web and mobile apps • Control UI from CMS • Layout and content saved in database, no deployment while update it