Microservices: Series overview


In July of last year, I joined a large firm as a software engineer. I was exposed to large-scale applications for the first time, and was able to shed my pre-existing biases against Java and Spring Boot as “old-school” or antiquated backend technologies.

The goal of this series is to share lessons learned about enterprise microservice architectures, and best-practices for developing a platform with Java and Spring Boot. The intent is for the content to be highly interactive and cover concepts end-to-end. Lastly, I would like to emphasize the “why” for any architectures, conventions, or patterns that are demonstrated.

Why Java + Spring ?

This stack has served large enterprises in a reliable and performant fashion for nearly 20 years now. Java is often one of the first languages people learn, because it is platform-independent and widely used.

Spring Boot is a highly opinionated web framework for Java. The advantage of having so many conventions built up over such a long time is that once you work with one Spring application thoroughly, all other Spring applications will make sense. In Spring, there is often only a few “right ways” to do something. Having conventions and patterns and frameworks for nearly everything makes it easier for people new to the framework to get their applications out fast.

Getting started

Note: This content is in its early stages. For now, it has been distributed to a limited audience with some pre-existing context. However, the long-term goal is to refactor this content for general consumption.

I’ve got a particular love for developer tooling as the best entrypoint to getting started with a new framework. Check out this article if you want to learn about the ideal tooling setup for keeping up with these tutorials, per platform.

After that, you can browse the articles under the enterprise-microservices tag. An ordering will be published here as soon as the first few content items are released.