For the past years, the software industry has been building systems and getting better at it. Throughout this time, different technologies, architectural patterns, and best patterns have emerged. This course focuses on one of the architectural patterns that has sprung up over the last few years – Microservice Architecture.

This architecture is a distinctive method of developing software systems consisting of modules that focus on a single-function. These modules also have well-defined interfaces, allowing the different modules to interact with each other. The trend for this architecture has grown popular in the recent years as organisations look to become more Agile and move towards being able to deliver high-quality products with a short time-to-market. Traditional software architecture patterns such as having the product as on one giant codebase make it more difficult for organisations to deliver at the pace of the market needs. Tech giants such as Uber, Netflix, and Amazon moved away from this monolithic architecture and transitioned to using Microservice architecture. However, this architecture should not be the default solution to every organisation. Microservices buy you a lot of options but do not come for free. The organisational structure and culture play a crucial role in the successful or failed implementation of this architectural pattern. It is important for the organisation to clearly understand the domain that it is operating in and design systems and teams driven by this domain.

This course starts off by understanding the role of the Agile framework and how this enables software teams deliver products with a quality mindset. We will then focus on how to use two tools to help us design and model our system. During this course you will learn how to use Domain-Driven Design to design our system and Event Storming to model our system. We will then move to develop our system using the Microservices architectural pattern. You will learn on how to test code as part of the development process, building a suite of tests that continously validate the quality of what you are delivering. Finally, we will focus on how to build a pipeline that enables you to deliver the developed system to our end-users.

Pragmatest (with the help of eSkills Malta Foundation) is offering a free course on Microservices. There are only a few places left. Express your interested by visiting here: https://pragmatest.com/courses/modern-software-development-using-microservices/