SOA is an approach to application design that allows us to build robust, scalable software. This is not about scary enterprise systems, this is about building applications with interoperable, lean services that can provide incredible flexibility and freedom. You will learn the pros (and cons) of this approach, and how you can apply it to your own projects. Using common idioms like REST, HTTP and message queues, complex applications can appear simple again. Simplicity leads to better design, increased agility and developer happiness.