icon-carat-right menu search cmu-wordmark

Designing Modern Service-Based Systems

From a buzzword in the early 2000s, service-oriented architecture (SOA) has evolved into an established paradigm for developing distributed software systems. But SOA today has a different face. Microservices, event-driven messaging, eventual consistency, container orchestration, and API gateways are just some of the design concepts that developers of modern service-based systems should be familiar with.

Course attendees will acquire a clear understanding of the main types of design elements and technologies that can be employed in microservice-based solutions, including REST services, platform-specific services (e.g., gRPC), message brokers, process workflow engines, and API gateways.

The course also covers security for microservices and containerization.

Audience

This course is valuable for

  • software and application architects
  • developers who use service technologies in their solutions
  • project managers and IT personnel responsible for microservice implementations

Objectives

After attending this course, learners will understand

  • benefits and challenges of microservices
  • what is necessary to be successful with SOA and microservices
  • main types of components found in microservice-based solutions
  • important design considerations for microservice-based solutions

Completion of this course fulfills a training requirement for the SEI's Microservice Architect certificate program.

Topics

The following topics are covered in this class:

  • quick review of service and related concepts
  • benefits and challenges of microservices
  • the pillars of successful microservice adoption: technology, governance, and architecture
  • design considerations for REST services; services that use platform-specific component technologies; and asynchronous microservices
  • other elements used in microservice architectures: service interceptors, message brokers, API gateways, and process workflow engine
  • security for microservices
  • containerization and container orchestration

Materials

Participants will receive a digital copy of the course presentation slides and a "cheat sheet" with the most important concepts. Participants will also receive a printed Certificate of Completion at the end of the class.

Prerequisites

Participants must have a basic understanding of distributed systems and Web-based applications.

 

IMPORTANT NOTICE:

Carnegie Mellon University/Software Engineering Institute offices will be closed for winter break, December 21, 2024-January 1, 2025. SEI course registrations received during this period will be confirmed and enrollment completed upon our return on January 2, 2025.

Course Questions?

Email: course-info@sei.cmu.edu
Phone: 412-268-7388

Related Courses

Software Architecture: Principles and Practices - eLearning

ONLINE Software Architecture, Cyber Workforce Development

This eLearning course introduces participants to essential software architecture concepts in a real-world setting using case studies, examines the technical and organizational issues regarding software architectures, and emphasizes the importance of the business context in which systems are designed.

Learn More

Design Guidelines and Patterns for Microservices

Software Architecture, Cyber Workforce Development

This two-day course will give you the knowledge to see the microservices landscape clearly. We will cover six guidelines for microservice designs and look at strategies available today to realize each design guideline, including design patterns, architecture tactics, and infrastructure elements.

Learn More

Training courses provided by the SEI are not academic courses for academic credit toward a degree. Any certificates provided are evidence of the completion of the courses and are not official academic credentials. For more information about SEI training courses, see Registration Terms and Conditions and Confidentiality of Course Records.