| Code: | architecture-fe |
| Category: | JS and Front-end |
| Format: | 33% workshop, 33% praca w grupie, 33% ćwiczenia |
| Duration: | 3-4 days |
| Target audience: |
liderzy zespołów developerzy architekci |
| Enrollment: | Groups, companies |
| Venue: | Client's office. |
The training is intended for experienced front-end developers who want and/or need to go beyond their framework and programming language and explore models, styles, patterns and principles of software architecture.
The topics discussed are either strictly front-end related, or universal, or knowledge of which will significantly improve communication between front-end developers and back-end developers and architects.
The training program is a general framework - we precede specific training with a pre-training analysis.
It's all about the content.
- Architectural thinking (high-level) instead of code and framework thinking (low-level)
- Emphasis on understanding the essence of architectural patterns and styles
- Searching for the pros and cons of each solution, understanding trade-offs
- Matching the class of solution to the class of problem
- Emphasis on understanding the business context and its impact on the architecture
Training Program
The content of our program can be customised during pre-training analysis.-
Architecture Introduction- Architectural drivers
- Goals of Architecture
- Architect as a role
- Architectural drivers
-
Documenting Software Architecture- ADR (Architecture Decision Records)
- RFC (Request For Comments)
- C4 Model
- Event Storming / Context Mapping
- ADR (Architecture Decision Records)
-
Architecture Styles and Patterns- Modular Monolith / Modulith
- Non Modular Monolith
- Non Modular Monolith
- Microservices
- Microservices-related patterns
- Distributed Monolith
- MicroFrontends
- Microservices-related patterns
- Micro Kernel
- Hexagonal
- CRUD
- CQRS
- Event Sourcing
- Modular Monolith / Modulith
-
Modularization- Types of Coupling
- Cohesion
- Encapsulation
- Anti-Corruption Layer
- Canonical Data Model
- God Classes
- Anemic Domain Model
- Dependency Inversion
- Law of Demeter
- Inversion of Control
- Hollywood Principle
- Types of Coupling
-
Capabilities- Reusability
- Scalability
- Resilience
- Availability
- Fault Tolerance
- Testability
- Performance
- Consistency
- Reusability
-
Integration (optional module)- Command, Event, Query
- REST
- CQRS vs API Composition
- Messaging
- Contracts
- Consumer-Driven Contracts
- Contract Testing
- Consumer-Driven Contracts
- Command, Event, Query
-
Transactions (optional module)- ACID
- Saga Pattern
- Orchestration vs Choreography
- Delivery Semantics
- At-most-once delivery
- At-least-once delivery
- Exactly-once delivery
- At-most-once delivery
- ACID
-
Strategic DDD (Quick Glance)- Subdomains
- Bounded contexts
- Context mapping
- Ubiquitous language
- Heuristics
- Subdomains
-
DevOps- CI: git flow vs trunk-based
- Infrastructure
- Provisioning
- Provisioning
- Observability, Monitoring, Logging
- (Distributed) Tracing
- DORA Metrics
- CI: git flow vs trunk-based
-
Micro-Frontends Architecture- Micro-Frontend Architecture Overview
- Benefits, Costs, Constraints
- Various Implementations
- The Strangler Pattern
- IFrames
- Webpack Module Federation
- Ng-elements / WebComponents
- Frameworks, Single-SPA
- The Strangler Pattern
- Micro-Frontend Architecture Overview
-
Frontend Application Patterns- Monitoring
- Realtime Operations
- Optimistic Updates
- Caching
- Queries
- Lazy Loading
- Hot-Module Replacement
- Time-travelling
- Monitoring
Download PDF
Trainers
Meet the experts who will conduct your training.