Moving a huge AngularJS App to React, progressively at Microsoft Scale
Submitted by Abhik Mitra (@abhikmitra89) on Friday, 29 June 2018
This talk is for anyone who wants to know how a large app such as Microsoft Teams is shipped and how we at Microsoft move from one technology to another while still serving millions of customers everyday.
The talk will mostly will give an insight into how Microsoft works, our design decisions, architecture and the processes that goes into changing technology of an app thats used by millions of users everyday.
- Our journey with Angular - What worked out well , what didn’t - Angular worked wonders for us when we wanted to ship very quickly. But as the team and the product grew , we stretched Angular too thin.
- Breaking up a monolith - The strategies we adopted on how we go about this daunting task of changing the stack of the app while still allowing developers to iterate on existing codebase.
- Gradually moving to React - Moving to React while keeping the entire app stable is like changing tires on a moving car
- Angular React Bridge - Talk about some of the key technical aspects,and the architecture of laying a communication mechanism between Angular and React while still allowing hundreds of developers to build features without worrying about internals.
What the talk is not about ?
1. React or any framework/library tutorial
2.Any Microsoft Technology , though you might hear about Typescript quite a few times in the talk :)
4.What Microsoft is gonna do with Github! :P
I am Abhik Mitra, Engineering Manager from Microsoft India Development Centre, Bangalore and working on moving ‘Teams’ to React.
In my 7 years of working in the industry I have worked on Web , Backend and mobile. In Microsoft, I have had the privilege of working on iconic products like Outlook Mobile and Microsoft Teams and seeing from close quarters how enterprise software is shipped! Before Microsoft , I was in Flipkart where I saw how a small startup matures to become the ecommerce leader of India.
Of all the pillars of Software Engineering , frontend excites me most!