Microservices Design (2 Days)

A rapid introduction to the basics of microservices design for the enterprise. Provides deep insight into the design of domain-driven, business event-based reactive systems, along with some of the more challenging aspects of defining state-of-the-art REST APIs.

Audience

Professional software architects, developers, and analysts who are interested in learning how to design enterprise microservices

Prerequisites

A conceptual understanding of web services design

Upcoming Public Classes

Enroll early and save.

Course Overview

This fast-paced, two-day workshop will get you off to a quick start designing enterprise microservices. It includes plenty of lab time to allow you to learn by doing, and hands-on exercises that reinforce key concepts to help you gain proficiency fast. Between lecture sessions and hands-on labs you'll get a first-hand introduction to fundamental concepts of microservices, domain-driven design, business event-driven modeling, and REST API design.

  • Learn the fundamental goals of microservices, and how microservice architecture can benefit the enterprise.
  • Gain hands-on experience initiating microservices modeling activities via event storming sessions.
  • Learn to identify key business events (e.g., Invoice Paid, Customer Registered, etc.), and gain insight into how they can become key integration points for future applications and workflows in the enterprise.
  • Learn how business events can be used to decouple systems, and to allow services, microservices, external systems, and applications to evolve independently as the enterprise and IT demand grows.
  • Gain hands-on experience using Domain-Driven Design (DDD) to identify bounded contexts, entities, value objects, and business events.
  • Learn to develop a microservices strategy that can ultimately scale to accommodate the entire enterprise.
  • Get familiar with using Swagger to define, document, and publish RESTful APIs for microservices.

Course Outline

Microservices
Learn what makes up a microservice system, and why microservices are valuable to a business or enterprise.
Moving from JEE to Microservices
Understand the choices, paths, and tradeoffs that enterprises face when migrating from legacy JEE architectures to microservice architectures. Discover great strategies for evolving legacy JEE architectures to microservice systems.
Reactive Systems
Learn to design reactive systems that are responsive to users, resistant to failure, can dynamically scale up and down based on load, and can be easily extended to meet future needs.
Business Events
Learn how business events can be used to decouple microservices, and how they can serve as extension points for adding or retiring future applications.
Event Storming
Practice kickoff sessions that start with business event-first thinking to help foster the design of loosely coupled microservices that can be reused throughout the enterprise.
Domain-Driven Design
Learn domain-driven design techniques for using bounded contexts, entities, value objects, aggregates, and more in the design of microservices. Gain group design and presentation skills by designing microservices for a pseudo company.
RESTful APIs
Learn to apply the principles of Richardson’s Maturity Model in designing a mature REST API. Get hands-on practice designing, documenting, and publishing microservice APIs using Swagger.
Modeling
Learn to use open source tools to visually communicate microservice designs.
Hands-on Design Sessions
Hone your skills by building a mock microservices design for a pseudo company. You'll gain hands-on experience applying concepts learned in class, and have a chance to practice group interaction and presentation techniques.

Request a Class

Your class, your way.

Don't see what you're looking for? Use the form below to request a class that's better suited to your location and schedule.

I'd like to arrange an onsite class.