The term “Microservice” is one of the most popular and most misunderstood concepts in modern software architecture. How small is a microservice? Does it have to be REST-compliant? Can different microservices share a database? And who made this stuff up anyway?

To answer these and other common practical concerns we’ve designed this one-day hands-on workshop. You’ll gain both a deep understanding of the microservices style of distributed server architectures and hands-on experience with building such an architecture and using the tools available to support it.

Eventbrite - Practical Code week: Microservices Done Right - Nov. 8th, 2018

Lectures: Uri Goldstein & Lior Friedman

Intended Audience

  • Software Developers
  • Software Development Tech Leads
  • Software Architects

Prerequisite

  • At least 1 year of experience developing software

Objectives

  • Learning the main characteristics of microservice-based architectures
  • Understanding benefits, costs and risks
  • Coding a microservice based system in class
  • Practicing patterns and tooling essential for microservice architecture success

Topics

  • 9 common characteristics of microservice architectures
  • Domain driven design (DDD) in the service of microservice architectures
  • Essential design patterns
  • Multi-tier testing strategy for microservices
  • Available open source tools

 Structure 

  1. A bit of history
  2. Lewis and Fowler’s industry survey of microservice usage
  3. 9 main characteristics of microservice
    • Componentization via Services
    • Organized around Business Capabilities
    • Products not Projects
    • Smart endpoints and dumb pipes
    • Decentralized Governance
    • Decentralized Data Management
    • Infrastructure Automation
    • Design for failure
    • Evolutionary Design
  4. A brief overview of DDD
    • Ubiquitous language
    • Entities, value objects and aggregates
    • Bounded contexts
  5. DDD in the service of microservice systems
  6. Essential design patterns
    • Service registry
    • Routing
    • Load balancing
    • Circuit Breaker
    • Bulkhead
    • Throttle
    • Global lock
  7. A multi-tier testing strategy for microservice systems
    • Unit tests
    • Component tests
    • Contract tests (w/ Pact)
    • Integration tests
    • End to end tests
  8. Hands-on practice: Building a microservices based system in class.

Schedule

Unless otherwise stated, the workshop runs 1 day, 9:30 to 17:30. 

Eventbrite - Practical Code week: Microservices Done Right - Nov. 8th, 2018