Advanced Angular – Architecture Workshop
Advanced Concepts & Architecture
Advanced Angular: Achitecture
In this training for advanced Angular developers you will learn everything you need for your large maintainable Angular-based enterprise and industrial solutions:
- Structure with Monorepos, Nx and Strategic Design.
- Microfrontends with Module Federation and Co.
- Reactive Architectures with RxJS
- State Management patterns with NGRX
- Performance Tuning of Large Applications
- Web Components with Angular Elements
- and much more.
The exercises will gradually result in an application that you can use for your own projects at the end of the workshop.
Optional – Remote Workshops: All our trainings and consultations can now optionally be booked as remote workshops!
🔥 Bonus: Latest Angular Features
- 🚥 Signals: Reactivity, RxJS/NGRX interop and change detection.
- The new NGRX 🚥 Signal Store
- Lightweight architectures with standalone components
- Functional guards, resolvers and interceptors
Structure for large applications: Monorepos, Nx and Strategic Design
- Planning architectures with Domain Driven Design (DDD)
- CLI Workspaces and Monorepos with Nx (Nrwl Extensions)
- Lightweight architectures with 💠 Standalone Components and APIs 🔥
- Develop and deploy reusable npm packages
- Categorization for libraries, modules, and components
- Enforce your architecture with access restrictions
- Build performance: incremental builds and tests with caching
- Integration with the CI process
- Customizable libraries with advanced DI patterns and content projection
- The open/closed principle in Angular with custom standalone APIs
Scalable Architectures: Micro Frontends with Module Federation and Angular Elements
- From Strategic Design to Micro Frontends
- Advantages and disadvantages of micro frontends
- Mono Repos vs. multiple Repos
- Using Webpack Module Federation to load separately compiled and deployed micro frontends
- Dynamic Module Federation
- Module Federation and Standalone Components 🔥
- Sharing dependencies
- Dealing with different versions
- Communication between Micro Frontends
- Cross-framework development with Angular Elements and Web Components
Modern solutions with 🚥 Signals
- Concepts and Building Blocks: Signals, Computed and Effects
- Reactivity with Signals
- Signals and Change Detection
- Interop with RxJS
State Management with the new NGRX 🚥 Signal Store
- The state layer and DDD
- The different operating modes of the Signal Store
- Selectors and View Models
- Normalized state
- Dealing with side effects
- Managing entities
- Custom features for recurring requirements
- External Updaters: Separating intention and execution
- Signal Store and lazy loading
- Interop with RxJS
- Life Cycle Hooks
- Facades as the linchpin
- Differences and similarities to Redux
State Management with the Classic NGRX Store and Redux
- The Redux pattern
- Actions and Reducers
- The classic NGRX Store and 🚥 Signals
Reactive Architectures with RxJS
- Reactive thinking and reactive design
- Chaining/ Piping of operators
- Combination Operators
- Higher-Order Observables
- Implicit and explicit reasoning
- Cold and Hot Observables and Multicasting
- Using Subjects
- Error handling
Bonus: Performance Tuning
- Lazy Loding with and without Router
- Data Binding Performance with OnPush, RxJS and Signals
- AOT and Tree Shaking
- Analyzing bundles
- Build performance with the build cache and incremental compilation
Bonus: Modern Security Architectures and Single Sign-on
- Connect existing identity solutions like Active Directory
- Social Login (Login with Facebook etc.)
- OAuth 2 and 2.1 and OpenId Connect
- JSON Web Tokens (JWT)
- Token Refresh
- Single Sign out
- Current recommendations of the OAuth 2 Working Group and consequences
- Tokens in the browser vs. Security Gateways (backend for frontend, BFF)
FAQs on our workshops
How do your workshops and courses work?
Our seminars around Angular are a mixture of lecture, live coding and actual exercises. Together we implement what we have learned during the workshop directly on a example project. This mixture guarantees that the course never gets boring and “hands-on” is required instead of gray theory.
Who is the Angular hands-on training designed for?
Our Angular hands-on workshop is aimed at anyone who wants to develop applications with Angular in the future or is already doing so and now wants to better understand the background, context and building blocks of the framework.
For advanced Angular developers we offer advanced seminars and intensive trainings on specific use cases.
Where do the Angular workshops take place?
Our trainings take place as public workshops in seminar rooms at central hotels in Germany, Austria and Switzerland. In-House company workshops take place at your office or conference room.
All courses are also available as remote workshops, where we meet online in a virtual classroom and do the training via video calls, screen sharing and live coding.
Who are the trainers?
Our workshops are held by experienced trainers and software architects. In recent years, we have provided Angular training to well-known companies – including well-known banks, insurance companies, industrial groups. Trainers include well-known conference speakers, authors of books and professional articles, bloggers, Google Developer Experts and university lecturers.
At what times are the training sessions held?
Especially for dedicated company trainings, we are happy to accommodate you. Typical times are 9:00AM to 4:30PM / 5:00PM. Some of our English-language workshops are timed so that you can also attend at US friendly times.
Can we also book online training courses?
Absolutely. In fact, since the pandemic, this has been our main business model and we have had very good experience with it. We use a combination of screen sharing, interactive online whiteboards, and are happy to connect to your computer for support during the exercises if you wish. As with our on-site training, we use a combination of short presentations, discussions, live coding and hands-on labs.
Since there is no travel involved, you also save time and money. We can also respond more flexibly to your scheduling needs.
Can we adapt the training for our purposes?
Yes, very much so. In fact, that’s one of the benefits of dedicated corporate training. You are welcome to weight, shorten or add to our agenda proposals. As a rule, we also coordinate with your trainer about 2 weeks before the training. If you wish, we can also arrange it earlier.
Among other things, Angular’s wide distribution speaks for itself, but also the fact that Google, an Internet giant that also uses the framework very intensively, is behind it. Google alone has over 2600 solutions based on it. Due to the wide distribution, there is a large community and thus a lot of know-how on the market as well as (free and commercial) products that are adapted to Angular. In addition, Angular provides much of what you need for large applications out of the box: test automation, form management, routing, etc. In this respect, you get a stack whose components are coordinated and work together in the long term.
How do you compensate for different prior knowledge?
The good news up front is that participants with different levels of prior knowledge are the rule, not the exception, in adult education. That’s why you’ll find optional fade-in hints and bonus exercises on our exercise sheets, for those who are a little faster. Of course, we also provide personal support for the exercises.
How many participants are recommended?
If you book a company training with us, we leave this decision to you in principle. However, experience shows that there should not be more than 15 participants, especially since a seminar lives very much from questions, discussions and practical exercises.
What software do we need?
Please install the following software packages on your computer:
– NodeJS in current version (we test with current LTS version).
– Angular CLI (npm i -g @angular/cli)
– Visual Studio (free) or WebStorm/IntelliJ (commercial)