Engineering the Future of Software
16–18 October 2017: Conference & Tutorials
18–19 October 2017: Training
London, UK

In-Person Training
Fundamentals of software architecture

Mark Richards (Self-employed)
Wednesday, 18 October & Thursday, 19 October, 9:00 - 17:00
Location: Thames Suite (Waterloo/Tower)
Average rating: ****.
(4.83, 6 ratings)

Participants should plan to attend both days of this 2-day training course. Platinum and Training passes do not include access to tutorials on Wednesday.

CNN recently rated software architect the number one job in America. Yet no clear path exists for moving from developer to architect. Mark Richards blends lecture and hands-on real-world group exercises to explore the many aspects of software architecture. You'll learn various integration styles (and when to use them) as well as patterns to fit various business needs and requirements.

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

  • Understand the role of an architect, how to think like an architect, and how to be an effective leader as an architect
  • Learn how to select the right architecture pattern for your application, identify and design software architecture components, and make architecture decisions

This training is for you because...

  • 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.

CNN recently rated software architect the number one job in America. Yet no clear path exists for moving from developer to architect. Why? Because software architecture is a massive multidisciplinary subject with no clear definition or job description, making it difficult to chart a course that covers all of the training and knowledge required to become an effective software architect.

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 tips and how to make development teams effective. Mark also shares tips for developing a career as a software architect.

Outline

Day 1

Introduction

  • 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 (cont.)

  • 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

About your instructor

Photo of 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.

Conference registration

Get the Platinum pass or the Training pass to add this course to your package

Comments on this page are now closed.

Comments

Chintoanu Mihai | SOFTWARE ENGINEER
15/10/2017 21:25 BST

Thank you.

Picture of Mark Richards
Mark Richards | SOFTWARE ARCHITECT
12/10/2017 22:09 BST

While we won’t be doing any coding exercises in this class, you may want to use a laptop to either follow along with the slides or digitize the architectures you will be creating.

Chintoanu Mihai | SOFTWARE ENGINEER
12/10/2017 10:31 BST

Do we need a laptop for this training?