Much ink has been spilled discussing the benefits of breaking a monolithic application into micro services. However, these benefits often come at great cost in additional complexity. In this session we’ll look at how we can build Elixir applications that leverage the underlying strengths of the Erlang platform to let us have our cake and eat it, too. We’ll demonstrate how we can build an application as a “monolith” and break pieces off into micro services will surprisingly little effort. We’ll dig into the key challenges of micro services including deployment, management, and versioning and see how the OTP framework gives us battle tested solutions out of the box. As developers, we no longer have to choose between getting things done and having an architecture that won’t fall over as our application grows.