ReactFoo 2017

A conference on React

Improving Load time of a Production React App

Submitted by Kanav Arora (@kanavarora) on Aug 2, 2017

Section: Full Talk Technical level: Intermediate Status: Confirmed & scheduled

Abstract

The talk will draw on our learnings from the efforts that we undertook earlier this year to improve UrbanClaps’s website performance, resulting in a 60% reduction in load time. All our efforts towards performance engineering can be bucketed in roughly two areas: ship less assets and tweaking order of delivery of assets. In this talk I will primarily focus on the former with key emphasis on how to really optimize bundling via webpack. All of this was done in the context of a large production app with constraints on product, business and user experience.

Outline

Introduction
- Tech stack of the urbanclap front end website
- Complexities faced in improving performance - Performance bucketing: Shipping less, Changing order of assets

Shipping less assets via webpack
- JS Chunking
- CSS Chunking
- Mobile/Desktop Chunking
- Chunks on Demand

Modifying order of assets for SSR
- CSS Inlining - Js Optimization

Impact
- Key Tech Metrics - Business Metrics - Tools/Performance Monitoring
- Why is it VERY important
- Webpack Analyzer
- Webpagetest.org
- Continuous Integration

Speaker bio

Kanav Arora is head of FrontEnd Engineering at UrbanClap, heading their web and mobile development teams. Prior to UrbanClap, Kanav has worked as a Software Developer at Microsoft and Lead iOS Developer at silicon valley mobile gaming company, PocketGems. He was also the CTO of a startup named Stuph in the valley, before moving to India. Kanav holds a BS in Computer Science from UC Berkeley.

Links

Slides

https://docs.google.com/presentation/d/1Fq9fBIfx_GfUyyXTYNc2O49LrIbqMQ4k8c4ISS2x8HA/edit

Comments

{{ gettext('Login to leave a comment') }}

{{ gettext('You need to be a participant to comment.') }}

{{ formTitle }}
{{ gettext('Post a comment...') }}
{{ gettext('New comment') }}

{{ errorMsg }}