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

PPTX
Blibli.com Technology Team
PPTX
Our Battle Against Technical Debt
PDF
Architecting for Hyper Growth and Great Engineering Culture
ODP
Why Java
PDF
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
PPTX
iPad Development Slides #ilta12
PPTX
inplant training for ece students || inplant training for engineering student...
PDF
Creating a Responsive Website From Scratch
Blibli.com Technology Team
Our Battle Against Technical Debt
Architecting for Hyper Growth and Great Engineering Culture
Why Java
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
iPad Development Slides #ilta12
inplant training for ece students || inplant training for engineering student...
Creating a Responsive Website From Scratch

What's hot (18)

PPTX
DeveloperDeveloperDeveloper! Sydney 2012
ODP
Synapse india reviews on cross plateform mobile apps development
PPTX
Satisfying Business and Engineering Requirements: Client-server JavaScript, S...
PDF
Google Developers Group Cloud Los Angeles, Progressive Web Applications by Ta...
PPTX
Collaboration Tools and Methods in Software Development
PPTX
Career Options for CS/IT/IS graduates
PPTX
Presentation
PPTX
MOBILE QUESTIONS & ANSWER WEBSITE
PPTX
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
PPTX
User Experience Prototyping
PPT
Php ey final
PPTX
Service Workers: no more offline!
PDF
The latest tools for developing your IBM i systems
PDF
Cross platform engineering - Lessons Learned (Michael Asimakopoulos, Valadis ...
PDF
Tech a Break Sudhanshu - Mobile Apps
PDF
The headless CMS
PDF
2014 Picking a Platform by Anand Kulkarni
PDF
Cross Platform Mobile Development
DeveloperDeveloperDeveloper! Sydney 2012
Synapse india reviews on cross plateform mobile apps development
Satisfying Business and Engineering Requirements: Client-server JavaScript, S...
Google Developers Group Cloud Los Angeles, Progressive Web Applications by Ta...
Collaboration Tools and Methods in Software Development
Career Options for CS/IT/IS graduates
Presentation
MOBILE QUESTIONS & ANSWER WEBSITE
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
User Experience Prototyping
Php ey final
Service Workers: no more offline!
The latest tools for developing your IBM i systems
Cross platform engineering - Lessons Learned (Michael Asimakopoulos, Valadis ...
Tech a Break Sudhanshu - Mobile Apps
The headless CMS
2014 Picking a Platform by Anand Kulkarni
Cross Platform Mobile Development
Ad

Viewers also liked (16)

ZIP
Blibli.com[kiyosaki]
PDF
java-fundamental-dan-java-web-blibli-dot-com-ilmu-komputer-IPB
PPTX
E-Commerce blibli.com
PDF
Blibli.com
PDF
e commerce pada perusahaan lazada indonesia
PDF
Development di Blibli
PPTX
Journey To The Front End World - Part2 - The Cosmetic
PPTX
Journey To The Front End World - Part3 - The Machine
PDF
What Great eCommerce Service Leaders Know & Do - A Modria Webinar
PPTX
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
PPTX
Irfan Maulana - Career Journey
PPTX
Email Marketing for ECommerce: Creating personalized experiences
PPT
Working cast &die shams new1
PPT
Imc clas mild final
PPTX
Analisis lingkungan internal
PPTX
Best buy A marketing excellence,concepts of managing retailing,wholesaling an...
Blibli.com[kiyosaki]
java-fundamental-dan-java-web-blibli-dot-com-ilmu-komputer-IPB
E-Commerce blibli.com
Blibli.com
e commerce pada perusahaan lazada indonesia
Development di Blibli
Journey To The Front End World - Part2 - The Cosmetic
Journey To The Front End World - Part3 - The Machine
What Great eCommerce Service Leaders Know & Do - A Modria Webinar
Php Indonesia x Bliblidotcom - Architecting Scalable CSS
Irfan Maulana - Career Journey
Email Marketing for ECommerce: Creating personalized experiences
Working cast &die shams new1
Imc clas mild final
Analisis lingkungan internal
Best buy A marketing excellence,concepts of managing retailing,wholesaling an...
Ad

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

PPTX
Beyond App Development
PPTX
Beyond App Development
KEY
Why Do Mobile Projects Fail?
PPTX
Rich Internet Application
PDF
Making mobile apps with web technology (revised)
PDF
GWT Architectures and Lessons Learned (WJAX 2013)
PDF
What is Happening in the "App Factory"?
KEY
Creating Next-Generation ADF Mobile Applications
PDF
Mse sept13 (3/3)
PPTX
Flash vs. HTML5 - by Omer Gartzman
KEY
Michael Slater Mobile Opportunity
KEY
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
PPTX
Optimized mobile apps
PPTX
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
PPTX
Mobile App vs Mobile Web Development
PDF
Building your Mobile App: Budget, Planning and Best Practices
PDF
Mobindustry presentation
PPTX
Mobile presentation - Sydney Online Retailer - 26 Sep 2011
PDF
The Forest Before The Trees: The Future of Web App Design
PDF
Android Application Development Online Training.pdf
Beyond App Development
Beyond App Development
Why Do Mobile Projects Fail?
Rich Internet Application
Making mobile apps with web technology (revised)
GWT Architectures and Lessons Learned (WJAX 2013)
What is Happening in the "App Factory"?
Creating Next-Generation ADF Mobile Applications
Mse sept13 (3/3)
Flash vs. HTML5 - by Omer Gartzman
Michael Slater Mobile Opportunity
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Optimized mobile apps
SenchaCon 2016: Using Ext JS 6 for Cross-Platform Development on Mobile - And...
Mobile App vs Mobile Web Development
Building your Mobile App: Budget, Planning and Best Practices
Mobindustry presentation
Mobile presentation - Sydney Online Retailer - 26 Sep 2011
The Forest Before The Trees: The Future of Web App Design
Android Application Development Online Training.pdf

More from ifnu bima (11)

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

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