Course Outline
Module 1: Architecture Standards that Scale
Objective: Establish a simple, shared set of architecture standards for Principals to reference in daily decision-making.
Topics
- Architecture principles: distinguishing what should be standardized from what teams decide
- Decomposition basics: defining boundaries and ownership
- Integration basics: API contracts, versioning, and compatibility
- Messaging overview: comparing Kafka vs RabbitMQ and identifying standardization opportunities
- Data overview: concepts of ownership and source-of-truth (MongoDB + SQL Server)
- Common architectural anti-patterns in high-scale systems
- Lightweight decision documentation using the ADR/RFC concept
Module 2: Code Architecture in Large .NET Solutions
Objective: Align on practical guidance for code architecture decisions within large-scale solutions.
Topics
- Structuring large .NET solutions: modules, layering, and boundaries
- Dependency direction and ensuring architectural visibility in code
- Shared libraries: balancing benefits against coupling risks
- Integration boundaries in code: separation of concerns patterns
- Code architecture 'review lenses': key areas to scrutinize quickly
- Managing exceptions without compromising consistency
Module 3: Design Reviews that Drive Decisions
Objective: Implement a consistent design review process that yields clear decisions and shared understanding.
Topics
- Characteristics of strong Principal-level design reviews
- Review workflow: determining scope and timing
- Review criteria: focusing on the most critical factors
- Facilitation techniques: keeping senior discussions focused and productive
- Decision closure: resolving debates and enabling progress
- Capturing outcomes: documenting decisions and follow-up actions
- Practice review using a short case study (system-level)
Module 4: Influence Without Authority for Principals
Objective: Enhance mentoring, feedback, and alignment habits with individual contributors.
Topics
- Mentoring vs. directing: coaching without assuming ownership
- Providing high-level technical feedback that is clear and standards-based
- Driving alignment across ICs using practical techniques
- Constructively handling disagreement and resistance
- Reusable conversation patterns and scripts for Principals
Requirements
Participants should bring 2–3 anonymized examples of recurring debates, such as those regarding system decomposition choices, integration approaches, or code structure rules. Sharing any existing internal standards is optional.
Testimonials (2)
Trainer knowledge, involvement, and rapport
Adam Kuklewski - GE Medical Systems Polska
Course - Technical Architecture and Patterns
I liked the exercises that helped to open the mind and gain new insights into software architecture.