Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
Rails engines are self-contained modules that can be used inside of a larger Ruby on Rails application to encapsulate complex functionality and expose it with a tight, well defined API. When implemented properly on the right domains, they can give your team a major speed boost. In this talk we will break down how Doximity used a Rails engine as a key ingredient to successfully rollout GraphQL Federation to our organizations.
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the video titled 'Using Rails Engines to Supercharge Your Team,' Austin Story, an engineering director at Doximity, discusses how his team successfully implemented Rails engines to facilitate the rollout of GraphQL Federation within their Ruby on Rails application. The talk emphasizes the benefits of using Rails engines as self-contained modules that can encapsulate complex functionality and expose well-defined APIs to streamline development processes. Story shares insights based on his experience from conception to deployment, highlighting key aspects such as: - **Definition of Keywords**: The presentation starts with defining fundamental concepts such as Ruby gems and Rails engines. A Rails engine is a specialized type of gem that integrates seamlessly with Rails applications, having the ability to share useful code and functionality. - **Introduction to GraphQL**: Story explains the components of GraphQL, emphasizing its utility in representing and querying data across various applications. GraphQL Federation is introduced as a method to unify multiple microservices, allowing them to respond to queries as a cohesive system. - **Doximity Background**: He provides context about Doximity, a professional medical network that operates a Rails-based web application. With 80% of US physicians on their platform, they must cater to numerous domains such as telehealth and news. - **Transition from Monolith to Microservices**: The talk describes Doximity's evolution from a monolithic architecture to a service-oriented architecture, detailing the challenges faced with resiliency issues, particularly in mobile-native environments. - **Implementation of GraphQL Federation**: The integration of GraphQL Federation allowed Doximity to overcome complexities associated with managing multiple microservices, enhancing the mobile developer experience while maintaining internal standards for back-end teams. - **Rails Engines for Streamlined Code**: Story highlights the importance of using Rails engines to manage complexities, thereby focusing teams on delivering essential features without being bogged down by the intricate details of the underlying systems. He emphasizes building an intuitive configuration system within the engine framework to facilitate ease of use. - **Developer Experience Enhancement**: The final part of the presentation emphasizes the importance of the developer experience, where by implementing standards, enhancing documentation, and providing notifications, teams can mitigate risks and streamline workflows effectively. Story concludes by articulating the significant improvements in developer efficiency and system integration achieved through this approach, ensuring developers can deploy changes quickly and confidently. Overall, the talk presents valuable strategies for leveraging Rails engines and GraphQL Federation to foster team agility and productivity in software development.
Suggest modifications
Cancel