4–7 Nov 2019

Fundamentals of software architecture (Day 2)

Mark Richards (Self-employed)
Location: M1

Who is this presentation for?

You're a senior-level developer who wants to become a software architect.

  • You're a junior architect who wants to become more effective in your role.

  • Description

    Being a software architect involves more than just drawing boxes and lines. It requires thinking like an architect, being a leader, and understanding the elements, patterns, and styles necessary to create effective software architectures. Leveraging many of the topics found in his Software Architecture Fundamentals videos from O’Reilly, Mark Richards blends lecture and hands-on real-world group exercises to explore the many aspects of software architecture.

    Knowing what styles and patterns best fit your situation is critical to the success of your architecture. You’ll learn various integration styles—including event-driven architecture, microservices architecture, microkernel architecture, and service-oriented architecture—and when to use each. You’ll then apply your knowledge in real-world small-team exercises, making decisions about which patterns best fit various business needs and requirements.

    Along the way, Mark emphasizes how important soft skills such as leadership, communication, facilitation, and negotiation are to a software architect and demonstrates related techniques, including some core leadership best practices and how to make development teams effective. Mark also shares tips for developing a career as a software architect.


    Day 1


    • Course logistics and introductions
    • Roles and expectations of an architect
    • Architecture knowledge and technical breadth
    • Architecture versus design
    • Balancing hands-on coding and architecture

    Architecture characteristics

    • Identifying architecture characteristics
    • Translating requirements into architecture
    • Team exercises: Identifying architecture characteristics

    Architecture patterns

    • Microservices architecture pattern
    • Service-oriented architecture pattern
    • Service-based architecture pattern
    • Layered architecture pattern

    Day 2

    Architecture patterns (continued)

    • Event-driven architecture pattern
    • Pipeline architecture pattern
    • Microkernel architecture pattern
    • Space-based architecture pattern
    • Team exercises: Identifying patterns and styles

    Component-based thinking

    • Identifying components and services
    • Component granularity
    • Component coupling
    • Component cohesion
    • Team exercises: Identifying architectural components
    • Team architecture presentations

    Architecture techniques and soft skills

    • Leadership skills: Making development teams effective
    • Tips for developing an architecture career path
    • Additional architecture resources

    What you'll learn

    By the end of this two-day training course, you'll understand:

    • The role of an architect
    • How to think like an architect
    • How to be an effective leader as an architect

    And you'll be able to:

    • Select the right architecture pattern for your application
    • Identify and design software architecture components
    • Make well-informed architecture decisions
    Photo of Mark Richards

    Mark Richards


    Mark Richards is an experienced hands-on software architect involved in the architecture, design, and implementation of microservices architectures, service-oriented architectures, and distributed systems. He’s been in the software industry since 1983 and has significant experience and expertise in application, integration, and enterprise architecture. Mark is the founder of Developertoarchitect.com, a website devoted to helping developers in the journey to software architect. He’s the author of numerous O’Reilly technical books and videos, including several books on microservices, the Software Architecture Fundamentals video series, Enterprise Messaging video series, Java Message Service, second edition, and a contributing author to 97 Things Every Software Architect Should Know. Mark has a master’s degree in computer science and numerous architect and developer certifications from IBM, Sun Microsystems, The Open Group, and Oracle. He’s spoken at hundreds of conferences and user groups around the world on a variety of enterprise-related technical topics.

    • AXA
    • Contentful
    • Datadog
    • HERE Technologies
    • QAware
    • SIG
    • Zara Tech
    • GitLab
    • NearForm
    • WhiteSource
    • Cloud Native Computing Foundation

    Contact us


    For conference registration information and customer service


    For more information on community discounts and trade opportunities with O’Reilly conferences

    Become a sponsor

    For information on exhibiting or sponsoring a conference


    For media/analyst press inquires