Enabling the rapid, frequent and safe delivery of software:

Developing Microservices

Take the opportunity to invite Chris Richardson to your company for a internal 2 days workshop.

You will learn how to use the microservice architecture to develop your applications. We will describe how to solve some of the key obstacles you will face including distributed data management. You will learn about strategies for refactoring a monolith to a microservice architecture.

Enterprises need to deliver better software faster. It’s no longer sufficient to release quarterly or even monthly. Instead, organizations must use methods, such as DevOps, to frequently deploy changes into production, perhaps as often as multiple times per day. One obstacle, however, to DevOps-style development is that organizations are often mired in monolithic hell. Key business applications are large, complex, unwieldy monoliths, and so it’s impossible to rapidly and safely deploy changes.

The solution is to adopt the microservice architecture, which is an architectural style that has the testability and deployability necessary for DevOps.

What you’ll learn, and how you can apply it

By the end of this two-day training course, attendees will understand:

  • Essential characteristics of the microservice architecture, its benefits, drawbacks and when to use it
  • Distributed data management patterns
  • Effective microservice testing strategies
  • Deployment options for microservices
  • Strategies for refactoring a monolithic application to a microservice architecture

And they will be able to:

  • Architect an application as a set of microservices
  • Use sagas to maintain data consistency
  • Implement queries that span services
  • Test microservices
  • Refactor a monolith to services

Course Outline

Day One:

Overview of the microservice architecture

  • The microservice architecture as an architectural style
  • Benefits and drawbacks of microservices
  • The microservice pattern language


  • Overview of decomposition
  • Decompose by business capabilities
  • Decompose by bounded context
  • Service design guidelines

Maintaining data consistency

  • Overview
  • Maintaining consistency using sagas
  • Coordinating sagas
  • Countermeasures for data anomalies


  • Overview
  • Using the API composition pattern
  • Using the CQRS pattern

Day Two:

Inter-process communication

  • Overview of  inter-service and external communication
  • Using an API Gateway
  • Service discovery

Testing strategies

  • Introduction to the testing pyramid
  • Writing consumer-driven contract tests
  • Developing component tests
  • Developing end to end tests

Overview of deployment patterns

  • Multiple services per host
  • Service per VM
  • Service per container
  • Serverless deployment


  • Incrementally refactoring a monolith into microservices
  • Strategy #1: stop digging
  • Strategy #2: split front-end & backend
  • Strategy #3: extract services

About Chris Richardson  

Chris Richardson is a developer and architect. He is a Java Champion, a JavaOne rock star and the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices and speaks regularly at international conferences.

Chris is the creator of Microservices.io, a pattern language for microservices, and is writing the book Microservice Patterns, which is available as a Manning MEAP. He provides microservices consulting and training to organizations that are adopting the microservice architecture and is working on his third startup Eventuate, an application platform for developing transactional microservices.



Längd: 2 dagar


Inga kursdatum finns för tillfället. Gör en intresseanmälan här.


Interested in arranging an internal workshop at your company? Please contact Cecilia Borg for more information. 



Chris Richardson  


Please contact Cecilia Borg.
Phone: 070-710 62 83