In the previous blog posts of our “Rebuilding messaging” series, we shared the process of how we designed the system from high-level product and engineering requirements, and how we bootstrapped the data. In this post, we’ll explore why we made extensibility a core aspect of our messaging platform, what that meant for our partner teams, and how we got it done....