What do farmers 200 years ago and modern-day software developers have in common? What kind of a story about web development can you tell with a slide that has a cow, a tangerine, a skyscraper and a unicorn together? Why would I use the word “tragedy” to describe our codebase while making a point that it’s not that tragic at all?
This is not a story about React, although its patterns are on half of the slides, but a tale of mistakes, revelations and human nature. In this talk, I will be sharing learnings that Atlassian developed while growing frontend development of Jira, its most popular product, to its current size (more than one mil lines of React code contributed by more than 400 engineers) and patterns and practices that we find useful and helpful when you have to deal with something of that scale.
I will share how our typical React architecture looks like, talk about state management, why we used Redux at the beginning, why we are abandoning it now, what patterns we use instead and other learnings on how to write scalable React code.
What are the key takeaways from this talk?
- How to write React code that is easy to scale to hundreds of developers;
- Things to watch out for when dealing with scale, both React specific and general coding patterns and practices