This talk will address some of the challenges of working with large monolithic codebases, and discuss two alternative solutions: microservices and componentization. Attendees will leave with a better understanding of how to identify when their app has become a monolith in need of a refactor, and feel better prepared with patterns and tools to do so.
Shopify is one of the largest Ruby on Rails codebases in existence. It has been worked on for over a decade by more than two thousand developers. It encapsulates a lot of diverse functionality from billing merchants, managing 3rd party developer apps, updating products, handling shipping and so on. It was initially built as a monolith, meaning that all of these distinct functionalities were built into the same codebase with no boundaries between them. For many years this architecture worked for us, but eventually, we reached a point where the downsides of the monolith were outweighing the benefits. We had a choice to make about how to proceed. This talk will walk the audience through that journey.
Kirsten Westeinde is a technology enthusiast and a lifelong learner. She is a senior development manager at Shopify, where she leads engineering teams building the Shopify Fulfillment Network, a network of warehouses that ships out orders on behalf of Shopify merchants. Her development experience is in Ruby on Rails and Go. She is constantly learning and adding new tools to her technology tool belt.
She is passionate about building diverse teams, mentoring & teaching, and gaining new perspectives through travel & cross cultural communication. She loves to share her learnings through public speaking and writing.