Engineering the Future of Software
Feb 3–4, 2019: Training
Feb 4–6, 2019: Tutorials & Conference
New York, NY

Moving to microservices: Using domain-driven design to break down the monolith

Maria Gomez (ThoughtWorks)
1:30pm–5:00pm Monday, February 4, 2019
Microservices
Location: Trianon Ballroom
Secondary topics:  Hands-on
Average rating: **...
(2.42, 12 ratings)

Who is this presentation for?

  • Architects, tech leads, and developers

Level

Beginner

Prerequisite knowledge

  • A basic understanding of continuous integration tools (such as GoCD or Jenkins) and DDD techniques
  • Familiarity with Java (useful but not required)

Materials or downloads needed in advance

  • A laptop (preferably with admin rights) with an IDE with refactoring support installed (IntelliJ is recommended.)
  • A GitHub account

What you'll learn

  • Understand the benefits of continuous delivery and automation in an organization
  • Explore a checklist of practices an organization should follow before embarking on this journey
  • Gain an introduction to techniques like DDD to help identify how to break down the monolith and structure your microservices
  • Discover the cost of change and risks related to this architecture
  • Learn how to determine whether you're ready to invest in it

Description

Agile practices and techniques like continuous delivery and evolutionary architecture are all about being able to react to changes rapidly. However, putting them into practice when you have a big legacy monolith application can be a difficult job, so recently the industry has come out with different ideas to solve this problem. Microservices, pushed by companies like Netflix or Amazon, are the latest solution to this problem.

Having an architecture based on services offers many advantages (like scalability and technical flexibility), but it comes with upfront costs and complexity that few companies are in a position to pay. Maria Gomez explores the prerequisites for moving into a microservices architecture and shares tips on how to achieve them. You’ll learn how to assess whether a microservice architecture is right for your organization; establish prerequisites for moving to microservices, including testing, automation, and continuous delivery; identify and decouple contexts using domain-driven design and refactoring techniques; and extract microservices from a monolith.

Topics include:

  • Continuous delivery readiness
  • Continuously building, testing, and deploying microservices autonomously
  • Testing microservices and ensuring changes don’t break dependent systems
  • Operational concerns
Photo of Maria Gomez

Maria Gomez

ThoughtWorks

Maria Gomez is the head of technology at ThoughtWorks Spain. Over her 10 years of industry experience, Maria has worked with many different technologies and domains, which has helped her lead teams and advise stakeholders in making the right technology decisions. She’s also a speaker and an advocate for diversity and inclusion in the IT industry.