We are looking for a Senior JavaScript Angular Developer (f/m) to join our team in Iberia and participate in a challenging international project.The position is open in Barcelona, Madrid, Reus, and Andalucia. Would you be interested in joining us? Take on the challenge!Requirements & ExperienceCore SkillsFramework ExpertiseExtensive knowledge of Angular fundamentals:Core concepts: Components, Services, Directives, Pipes, Modules, and Dependency Injection (DI).Data binding: One-way, Two-way (@Input, @Output, ((ngModel))), and event handling.Proficiency in Angular’s advanced features:Change Detection strategies (Default and OnPush) for efficient rendering.AOT (Ahead-of-Time) compilation for runtime performance.Dynamic and lazy module loading for large-scale applications.Expert in routing:Nested routes, route guards, resolvers, and preloading strategies.Expertise in handling Angular Universal for server-side rendering (SSR) and optimizing rendering paths.State ManagementProficient in NgRx or alternative state management libraries:Implementing modular, scalable state management with selectors and effects.Use of CQRS (Command Query Responsibility Segregation) for complex workflows.Factory vs ReduxOptimizing unidirectional data flow vs. two-way binding.Expertise in memoization and selector patterns for performance-critical applications.RxJS and Reactive ProgrammingAdvanced RxJS skills:Proficient in mergeMap, switchMap, debounceTime, and combineLatest.Expertise in managing cold vs. hot observables and Subjects.Effective subscription handling to avoid memory leaks.Service Workers and Progressive Web Apps (PWAs)Expertise in creating Service Workers:Implementing caching strategies (cache-first, network-first, stale-while-revalidate).Offline capabilities and synchronization for PWAs.Understanding and implementing PRPL Pattern for fast, reliable web applications.Integrating push notifications and background sync using Service Workers.Rendering & DOM OptimizationProficient in Critical Rendering Path (CRP) optimization:Minification, bundling, and tree-shaking using Webpack and Angular CLI.Lazy loading modules and components to reduce initial load time.Optimizing resource delivery with HTTP/2.Expertise in DOM rendering and manipulation:Efficient use of Angular structural directives (*ngIf, *ngFor).Reducing reflows and repaints for optimized DOM updates.Implementing virtual scrolling for large datasets.Expertise in Pixel Pipeline Optimization:Ensuring smooth rendering through compositing and painting optimizations.Architectural KnowledgeSOLID PrinciplesDesign PatternsProficiency in applying patterns:SingletonObserverFactoryFacadeDecoratorUnderstanding of Behavioral Patterns:MediatorChain of ResponsibilityMVC (Model-View-Controller) and Redux for state organization.Event-driven architectures and Pub/Sub communication.Anti-PatternsGod ServicesTwo-Way BindingDOM ManipulationUnsubscribed ObservablesExcessive Component NestingApplication ArchitecturesProficiency in:Microfrontend architectures with Module Federation for Angular.Client-side rendering (CSR), server-side rendering (SSR), and isomorphic applications.JAMstack and distributed rendering for modern web apps.Tooling and EcosystemWebpack and Module FederationExpertise in Webpack:Custom configurations, plugin optimizations, and module bundling.Advanced use of Module Federation:Implementing microfrontends with shared Angular components and libraries.Resolving module conflicts and ensuring seamless inter-module communicationPerformance ProfilingUsing tools like Lighthouse, Chrome DevTools, and Webpack Bundle Analyzer.Analyzing Time-to-Interactive (TTI), First Contentful Paint (FCP), and Largest Contentful Paint (LCP).Testing FrameworksExpertise in testing Angular applications:Jasmine/Jest for unit tests.Cypress/Playwright for E2E testing.Mocking HTTP services with Angular’s TestBed.Observability & MonitoringImplementing error tracking and logging with tools like Sentry or Open Telemetry.Custom Angular interceptors for centralized error handling and monitoring.Algorithms and Data StructuresAlgorithm ExpertiseSorting: QuickSort, MergeSort for data-heavy applications.Searching: Binary Search for efficient filtering.Dynamic Programming for caching results in services.Data StructuresProficient in:Trees for hierarchical data representation.Graphs for routing and module dependency resolution.Queues and Stacks for task management.Optimization TechniquesDebouncing and Throttling for managing frequent user interactions.Efficient data bindings and template rendering.Soft SkillsProficient in mentoring and code reviews.Excellent communication skills for articulating trade-offs and technical decisions.Strong ability to collaborate with cross-functional teams and stakeholders.