Training Classes
I offer training classes for organizations who would like a deeper dive into the content I've written and spoken about over the years.
All of my classes are hands-on, with supporting exercises to help turn abstract concepts into concrete results. I also encourage digressions that allow me to apply my years of consulting experience to apply the lessons within a familiar context.
Software Architecture Fundamentals Hands-on Training
The job Software Architect places in the top ten of most annual surveys of best jobs, yet no clear path exists from Developer to Architect. Why aren’t there more books and training materials to fill this demand? First, software architecture is a massive multidisciplinary subject, covering many roles and responsibilities, making it difficult to teach because so much context is required for the interesting subjects. Second, it’s a fast moving discipline, where entire suites of best practices become obsolete overnight. This workshop provides a foundation to build upon to start the journey towards software architect. I offer two different versions of this workshop based on length, either two or three day.
This workshop focuses on the foundational material required for success as a modern software architecture. It touches upon the major design elements of the role and discusses several soft skills such as communication as well.
- Software architecture defined
- Architecture characteristics
- Component-based thinking
- Architecture quantum
- Scope of architecture characteristics
- Exercise: Determine architecture quantum
- Automating architectural governance
- Architecture styles overview
-
- Monoliths
- Micro-kernel
- Pipes/filters
- Event-driven architectures
- Orchestration-driven service-oriented architecture
- Microservices
- Space-based architecture
- Service-based architecture
- Choosing an architecture style
- Exercise: Choose an architecture
- Documenting architecture
- Exercise: Document communication styles
- Next steps
Each section includes group-based, hands-on exercises to help make abstract architecture concepts