Here we go again, another cool buzz phrase. And like many other buzz phrases, it’s often misunderstood. In fact, many developers or even full organizations don’t really have a clear understanding of what Microservices are. The reason is twofold. First, may are too hung up on the technology to use. It’s gotta be REST, they have to be small (it’s micro remember), you gotta use Docker, etc. I’m being sarcastic in case you didn’t notice. The second reason is that devs are not thinking of their systems in a more holistic fashion when trying to fit what they think are microservices into the mix. And no, this way of thinking about a system does not imply a tightly coupled system, don’t worry. This session will not be about code, but more about architecture and design. I’ll tell you what microservices are and what a microservice architecture is and we’ll discuss the characteristics at the service level and with everything that surrounds them in the architecture. We’ll talk about the concept of “design for failure” while covering topics like hosting, discoverability, failover, and the often-confusing API Gateway. These are some of the things you will need to understand before you embark on the adventure that is a microservice architecture and if it’s even something that will work for you.