Interview Prep
Angular
250 questions across 24 categories
50 of 50 questions
| # | Category | Question | Answer | ★ |
|---|---|---|---|---|
| 1 | Architecture | What is Angular's module system? Compare NgModules with the new standalone components API. | Click row to expand | |
| 2 | Architecture | Explain Angular's dependency injection system. What are the different providers and injection tokens? | Click row to expand | |
| 3 | Change Detection | How does Angular's change detection work? Explain Zone.js, OnPush strategy, and signals. | Click row to expand | |
| 4 | Change Detection | What is ChangeDetectorRef? Explain detach, detectChanges, and markForCheck in depth. | Click row to expand | |
| 5 | Change Detection | What is the async pipe? Why is it preferred over manual subscriptions for template bindings? | Click row to expand | |
| 6 | RxJS | Explain the difference between switchMap, mergeMap, concatMap, and exhaustMap. When do you use each? | Click row to expand | |
| 7 | RxJS | What are RxJS subjects? Compare Subject, BehaviorSubject, ReplaySubject, and AsyncSubject. | Click row to expand | |
| 8 | RxJS | How do you handle errors in RxJS? Explain catchError, retry, retryWhen, and error recovery patterns. | Click row to expand | |
| 9 | RxJS | What are RxJS creation operators? Compare timer, interval, fromEvent, from, of, and defer. | Click row to expand | |
| 10 | RxJS | How do you prevent memory leaks from RxJS subscriptions? What patterns handle automatic unsubscription? | Click row to expand | |
| 11 | Forms | Compare template-driven and reactive forms in Angular. When should you use each? | Click row to expand | |
| 12 | Forms | How do you implement custom validators and async validators in Angular reactive forms? | Click row to expand | |
| 13 | Forms | What is ControlValueAccessor? How do you implement a custom form control? | Click row to expand | |
| 14 | Routing | How does Angular Router work? Explain guards, resolvers, lazy loading, and route parameters. | Click row to expand | |
| 15 | Routing | What is Angular's preloading strategy? Compare NoPreloading, PreloadAllModules, and custom preloading. | Click row to expand | |
| 16 | Architecture | What are Angular lifecycle hooks? In what order do they execute, and what are common mistakes? | Click row to expand | |
| 17 | Architecture | What is the Angular HttpClient? Explain interceptors, error handling, and how to implement a retry interceptor. | Click row to expand | |
| 18 | Performance | What is Angular's OnPush change detection strategy? How do you design components for maximum OnPush compatibility? | Click row to expand | |
| 19 | Performance | What are Angular signals? Explain signal(), computed(), effect(), and how they integrate with components. | Click row to expand | |
| 20 | Performance | How do you implement lazy loading in Angular? Explain deferrable views (@defer) in Angular 17. | Click row to expand | |
| 21 | Architecture | What are Angular directives? Compare attribute, structural, and component directives. | Click row to expand | |
| 22 | Architecture | What are Angular pipes? When should you create custom pipes and how do you make them pure? | Click row to expand | |
| 23 | Testing | How do you unit test Angular components with TestBed? What should you mock and what should you use real instances of? | Click row to expand | |
| 24 | Testing | How do you test Angular services with HTTP calls using HttpClientTestingModule? | Click row to expand | |
| 25 | Architecture | What is Angular CDK? What utilities does it provide for building custom UI components? | Click row to expand | |
| 26 | Architecture | How do you implement state management in Angular without a library? Explain the service-with-subject pattern and when to upgrade to NgRx. | Click row to expand | |
| 27 | Performance | What is trackBy in *ngFor / @for? Why is it critical for list performance? | Click row to expand | |
| 28 | Architecture | What is content projection in Angular? Explain ng-content, ng-template, ng-container, and multi-slot projection. | Click row to expand | |
| 29 | Architecture | What is Angular's Zone.js? How does Zoneless Angular work and when would you use it? | Click row to expand | |
| 30 | RxJS | What are RxJS multicasting operators? Compare share, shareReplay, publish, and multicast. | Click row to expand | |
| 31 | Architecture | What is the difference between @ViewChild and @ContentChild? How do signals-based queries work in Angular 17? | Click row to expand | |
| 32 | Architecture | What is the Angular control flow syntax (@if, @for, @switch)? How does it differ from structural directives? | Click row to expand | |
| 33 | Testing | What is ComponentHarness in Angular CDK? How does it enable resilient component testing? | Click row to expand | |
| 34 | Architecture | What is the Angular SSR (Server-Side Rendering) and the App Shell pattern? How do you configure Angular Universal? | Click row to expand | |
| 35 | Architecture | What are Angular environments and how do you manage configuration for multiple environments? | Click row to expand | |
| 36 | Performance | How do you profile and optimize Angular application bundle size? What are the main causes of large bundles? | Click row to expand | |
| 37 | Architecture | What is Angular's Dependency Injection hierarchical tree? Explain module injectors vs element injectors and their precedence. | Click row to expand | |
| 38 | Testing | How do you implement E2E testing for Angular with Playwright? What is the testing pyramid for Angular apps? | Click row to expand | |
| 39 | Architecture | What is the Angular Router's NavigationExtras? Explain query params, fragments, state, and extras in navigation. | Click row to expand | |
| 40 | Architecture | What are Angular animations? How do you use the Angular animation DSL and BrowserAnimationsModule? | Click row to expand | |
| 41 | RxJS | What are higher-order Observables? How do you flatten them and why does nesting matter? | Click row to expand | |
| 42 | Performance | How do you implement server-sent events and WebSocket connections in Angular with RxJS? | Click row to expand | |
| 43 | Forms | What is FormArray in Angular reactive forms? When and how do you use it for dynamic forms? | Click row to expand | |
| 44 | Architecture | What is the Angular ElementRef and Renderer2? Why should you use Renderer2 instead of direct DOM manipulation? | Click row to expand | |
| 45 | Architecture | Explain Angular's internationalization (i18n) support. How does $localize differ from pipe-based i18n libraries? | Click row to expand | |
| 46 | Testing | How do you test Angular directives? What's the difference between testing attribute vs structural directives? | Click row to expand | |
| 47 | Architecture | What is NgRx Effects? How do you use them for side effects and compare them to RxJS-based service patterns? | Click row to expand | |
| 48 | Forms | How do you implement multi-step forms (wizard) in Angular? What state management approach works best? | Click row to expand | |
| 49 | Performance | What is Angular Hydration? How does it prevent content flickering and improve Time to Interactive? | Click row to expand | |
| 50 | Architecture | What are Angular micro-frontends? How do Webpack Module Federation and @angular-architects/module-federation enable them? | Click row to expand |