- False Simplicity of Front-End Applications: Our Experience [rus]: similar title as #1 but different talk, with more details about Grammarly Editor implementation challenges
Description: Togather with Yaroslav Voloshchuk talking about the implementation challenges of Grammarly Editor and why certain decision were made.
- Solving behavioral complexity with FRP [rus]: deep dive into how we apply FRP when building Grammarly Editor
At Grammarly, we have tried different approaches to handle behavioral complexity. We made a long journey from callback hell to FRP, and from dynamic to static typing. We will discuss how FRP helped us build stable high-loaded front-end applications with complex async actions for millions of daily users.
- Real-time Collaborative Text Editing on Grammarly’s Front-End Team [rus]: The talk about how the Grammarly Front-End team has solved real-time collaboration editing in creating the Grammarly Editor.
Real-time collaboration editing is a common task on the modern web. I will tell you about how the Grammarly Front-End team has solved it in creating the Grammarly Editor. This talk will focus on the complexity, communication protocols, and the nuances of implementing it on the front-end.
The meetup is about how do we test in general and about Marble and Property-based testing in Grammarly Editor codebase.
The meetup is about how do we test in general and about Marble in the Grammarly Editor codebase.
- How to Use Bazel to Manage Monorepos: The Grammarly Front-End Team's Experience [rus]: The talk is about why we decided to use monorepo for Grammarly OnlineEditor and why chose Bazel to manage it.
At some point, we reached the limit of the existing build process in the Grammarly Editor monorepo. Build tools required too much time to support, and each new package increased build time and made dependency management harder. To move further, we had to rethink the architecture of the build process. Our solution: We switched to Bazel. In this talk, I will share our findings and how we made the architecture of the build process scalable and predictable.
The System Design interview is a relatively new type of interview for the front-end. However, it's been a default interview in Grammarly for quite a while. I will show an almost real-life example, and we will discuss what to pay attention to during such interviews.
My part is about key vectors of attacks and practices to protect your web application.
- Under the Hood of the Grammarly Editor
- Part One: Real-Time Collaborative Text Editing is about how clients collaborate with backend in real time
- Part Two: How Suggestions Work is about how real-time suggestions work on the front-end side