One day a canary drank an elixir and made friends with a little caterpillar, this is the story of how the canary protected the little caterpillar from all dangers until the caterpillar was ready to become a butterfly. In this talk I tell the story of how we migrated our first Microservice out of a large monolithic C# application into an elixir Microservice. I’ll tell the story in the style of the very hungry caterpillar (https://en.wikipedia.org/wiki/The_Very_Hungry_Caterpillar) with the caterpillar eating various things along the way.
Using behaviour driven development, canary releasing, circuit breakers, soak testing, graphite monitoring and visualisation we managed to migrate users to our new Microservices with almost zero downtime. I’ll go over how we debugged some of the difficult technical problems and also how we identified some bottlenecks to our productivity and actively fixed them. We made some mistakes along the way and constantly refined our processes and approaches to give the best outcome for the business.
Neil Crawford is head of technology at Findmypast after serving as software architect and technical lead. He made his start in games programming but found his passion for web development working on Lives of the First World War, the permanent digital memorial to those who served the Commonwealth during the First World War. He blogs on the Findmypast tech blog and is an active member of the local tech meetup in Dundee, Scotland.