JSFoo 2014

JavaScript as the centerpiece of a complex web stack

Scalable front end tech stack for >1.3M+ users and a 400+ person development team.

Submitted by Anshu Verma (@vermaanshu) on Sunday, 10 August 2014

videocam_off

Technical level

Intermediate

Section

Full talk

Status

Submitted

Vote on this proposal

Login to vote

Total votes:  +14

Objective

Front end development is a rapidly evolving universe with its landscape changing everyday. Everyday there are new trends, tools, libraries, frameworks and patterns that enable a better, a more beautiful and a faster web. The pace of change is so fast that what works today, is obsolete tomorrow or there is a new and a better way.

In this session, we will use our journey of rewriting a global SaaS offering that generates $200M in annual revenue and serves more than 1.3 million users worldwide to share the following

  • Practices & technology stack that are key to building a large single page web app - why they are important and what went behind choosing them.
  • Patterns that allow to swap technologies seamlessly and enable large scale parallel development.
  • Node.js as the new front end backend

Expect to see some code and cool demos as well in this session.

Description

Intuit’s flagship product, Quickbooks online, is the no. 1 small business cloud accounting solution that is used by 1.3M+ users worldwide in more than 10 languages. It serves over $1 trillion in commerce where users and accountants from 150 countries depend on our solutions for running their business and be profitable.

A couple of years ago, based on the rapid user growth in Quickbooks, we realized that our existing approach for front end development needs to change. We were getting dogged by questions about performance, an aging user interface and an increasing difficulty faced by developers to build apps. We knew, we needed to change. But, the change was not trivial - to put it in perspective, we were talking about almost 2M lines of existing code that powered our front end. So, while the case for change was clear, the path was not.

After some prototypes where we A/B tested new features with different front end technology stacks, we soon had a winner. The winner was - we will do full front end development with JavaScript and it’s complementing technologies. Period.

The path to new stack was non-trivial though – the bold call to replace almost 2M lines of current code sent shivers down the spine. Today, after a successful rewrite and a complete one year since the full Javascript stack in production to all users, we have not only survived— but we have accelerated our customer growth and our user satisfaction, as measured by the Net Promoter Score.

The following articles published by various experts give a brief indication of how users loved the new interface

  1. http://www.intuitiveaccountant.com/training-center/the-new-qbo—slick%E2%80%93n-speedy
  2. http://www.sleeter.com/blog/2013/08/quickbooks-online-user-interface-update/
  3. http://www.inc.com/john-brandon/tested-new-intuit-quickbooks-online-plus.html

In this session, We will share our experiences during this transformation— what worked well as well as what you should avoid. We will also show you production code so that you can incorporate these techniques into your own SaaS offerings.

Speaker bio

Anshu Verma, Distinguished Architect at Intuit, has a passion for building highly scalable and complex SaaS offerings that are easy to manage. In his role at Intuit, he is focussed on enabling Quickbooks Online to be an open platform via technology transformation in the areas of web, globalization and user contribution systems. He has been instrumental in leading Quickbooks online’s journey to a platform that serves 1.3M+ paying users across 160 countries, supports 46 languages, handles multi-currency accounting for 143 currencies & integrates with numerous 3rd party apps and business partners across the world.

Links

Comments

  • 1
    Harish Sivaramakrishnan (@harish-io) 4 years ago

    Anshu - Would you be doing the same talk that you have posted in the slideshare link? Also, would you be covering how you are achieving this scale in some depth, from a technical stand point?

    • 1
      Anshu Verma (@vermaanshu) Proposer 4 years ago

      Anshu - Would you be doing the same talk that you have posted in the slideshare link?

      No. The earlier talks were focussed on “Globalization” and using “Data” to meet the scale of different needs users have worldwide.

      This talk will be focussed on the front-end stack and JavaScript at scale.

      Also, would you be covering how you are achieving this scale in some depth, from a technical stand point?

      Yes, the plan is to share our approach on technology & patterns that will (a) show how JS works at scale and (b) their importance & need.

      The plan is to show code as well during the talk.

Login with Twitter or Google to leave a comment