Building a highly scalable exchange - To react or not to react
Sreekanth G S at ReactFoo 2019
We are an organization which built one of India’s leading crypto currency exchange, and faced the struggles and wrath of scale and lack of scale. Backed by a prominent company, the effect of a successful PR and a wave of customers based on current trends, brought us thousands of customers flocking into a platform primary built on Ruby on Rails (both frontend and backend). However, as the customers inflow grew, our poor old stack couldnt bear the grunt, and fell short, customers being unable to trade and perform fund transactions in near realtime. We introduced lot of changes, yet couldnt handle the scale with a frontend+backend combined stack. Learning from our mistakes, we rebuilt our entire platform from the ground up, isolating the front-end introducing React, and with a multitude of changes for the backend. After doing an intensive round of testing, we are happy that we have grown exponentially when it comes to handling traffic, and the use of a pure-frontend stack offering better customer experience even during backend outages or delays. Keytake aways from the talk: 1. Learnings - Disadvantages or rather limitations of using a combined stack for frontend/backend 2. Choices on way forward - Options, suggestions and expectations 3. Learning curve and adaptability challenges 4. Mental roadblock and inertia on thinking 5. Overcoming challenges, and implementing 6. Difficulties faced while transitioning and road ahead The talk will be presented by myself, Sreekanth GS (CTO, Hatio Innovations). Intending the talk to be of a free-flow format, primarily discussing on merits of taking up an endeavour to rewrite a full stack adopting React as well as the challenges and difficulties faced. General flow: 1. Introduction and pep talk 2. Pitch on what we did and what we did wrong 3. Summary on expectations from a solution 4. Options and choices on achieving the solution 5. Nitty-gritties of choices 6. Adoption and roadblocks 7. Overcoming roadblocks 8. Implementation strategy 9. Test on success of solution implementation 10. Way ahead and the future