
Apply the open-closed principle to extend functionality without modifying existing code, using abstract shapes and draw methods to add new shapes or plug-ins.
Explore the Liskov substitution principle, showing why subtypes must preserve superclass behavior, not just structure, using rectangle and square examples and the role of interfaces or composition.
Examine microservices as a response to monolith limits, enabling independent deployment of small services while weighing network latency, API versioning, monitoring, and hybrid forms.
Explore scalability from hundreds of users to a million, comparing vertical and horizontal scaling and how modularized monolith, microservices, event-driven patterns, container orchestration, and load tests enable reliable performance.
Fundamentals of software architecture and software design explained in an understandable way
This course guides you step by step through key terms and concepts such as layers, components, coupling, cohesion, architectural styles, and patterns, covering software design, software architecture and enterprise architecture. Understandable explanations without prior knowledge, with clear goals: to create a solid foundation for implementing a sustainable software architecture.
Sustainable knowledge transfer without a focus on technology
The knowledge taught in this course focuses on concepts and principles rather than specific technologies. This creates a long-lasting, technology-agnostic foundation that strengthens your career in the long term and gives you flexibility in changing technology landscapes.
Focus on long-lasting, resilient systems
You will learn about quality attributes such as scalability, reliability, maintainability, and security, and find out how to make architectural decisions that will continue to work in the future based on those quality requirements. Small, practical examples show you how you can apply this knowledge in your practice.
Practical, motivating learning journey for beginners
The course combines clear and concise explanations with small examples that even beginners can successfully master. By the end, you will have a solid grasp of the terminology and concrete tools to make your first architectural decisions and further expand your understanding.
Sounds great? I'm looking forward to welcoming you!