Angular
Angular is a JavaScript framework created by Google.
Ideal for teams that…
Modern frontend in practice — components, performance and code quality.
Best practices in JavaScript programming and practical aspects of building SPAs with Angular
Using functional and reactive programming to solve common problems
Properly configuring environments for advanced frontend projects
Building readable and efficient applications in JavaScript and TypeScript
Creating component-based applications
What we actually do
- · Application Structure Logical division of modules and components Efficient lazy loading strategies Best practices for designing components (inputs/outputs, configuration, ng-content) Components vs services vs directives – assigning responsibilities
- · Composition in Large Projects Specialization vs generalization of components Common architectural mistakes TypeScript path aliases
- · Application Size Webpack bundle analysis Angular budgets Polyfills and cross-browser support Differential loading
- · Change Detection and Performance How the change detection tree works Lifecycle of components and services Update strategies and manual change detection Executing functions in templates vs change detection One-way vs two-way data binding
- · RxJS Pitfalls Hot vs Cold observables Synchronous vs asynchronous streams How Subjects work Subscription management Common memory leaks in Angular applications Data caching with RxJS Using async pipes in Angular
- · Testing Angular Applications Testing components and services Mocking dependencies Unit tests vs component tests – what to test? TestBed vs Spectator
- · Updating Angular Versions Migration to newer Angular versions Using Angular Schematics for migrations
- · Navigation and Permissions Blocking navigation and resource loading with router guards Guards vs Resolvers Dynamic router guard configuration
- · State Management with NgRx What state management is and problems it solves Redux pattern When to use state management High- and low-level communication in applications Caching data in state Tooling and debugging
- · Reactive Forms Template-driven vs Reactive Forms – when to use each Using both approaches together Binding data with reactive controls Connecting ngModel with Reactive Forms Subscribing to value changes
- · Component Libraries Creating a custom component library Documenting components with Storybook
- · Managing Large Projects with Nx (nrwl/nx) Problems solved by Nx When to use Nx Managing dependencies with tags and constraints Logical division and hierarchy of libraries and applications Namespace aliases Built-in tooling Dependency graph Differential builds and testing
From brief to retro in 30 days.
Brief & diagnosis
A call with the team lead + a short survey for participants. We define goals, gap and context.
Program customization
We adapt modules, case studies and code examples to your stack. Approval in 5 days.
Workshop
Trainer-led sessions, hands-on, code review. Mentor available between sessions too.
Retro + report
Outcome report for the team and lead. 30 days of consulting included.
Send a brief. We'll reply within 1 day.
After a short brief we'll prepare a program and a quote. No obligations — it's just a starting point.
Thank you!
We'll get back to you within 1 business day.
Other programs for teams
See all →Creating SPA applications with the Angular framework
Modern frontend in practice — components, performance and code quality.
Full-stack applications with NestJS and Angular
Modern frontend in practice — components, performance and code quality.
Fullstack React with NextJS and TypeScript
Modern frontend in practice — components, performance and code quality.