P
prepair.app
Start interview →
EnglishУкраїнськаРусскийDeutsch
🅰️

Middle Angular FrontendAngular interview questions

Middle · 2–4 years of experience

Angular interviews cover dependency injection, RxJS, change detection, and TypeScript — the framework is opinionated, so questions test whether you understand its machinery. Below are the most common with model answers. Middle: deeper understanding, optimization, and real-world situations.

Try it — no account needed
Preparing your question…

Topics to prepare

Dependency Injection
RxJS and Observables
Change Detection
Modules and components
Reactive forms
TypeScript

6 Middle-level questions with answers

1

How does change detection work, and what does OnPush change?

Answer

By default Angular checks every component in the tree after anything that might have changed state. OnPush narrows it: the component is checked only when an input reference changes, an event fires inside it, or an observable it uses via async emits. It turns a whole-tree check into a targeted one, which is the single largest performance lever in Angular.

2

What does Zone.js do and why is Angular moving away from it?

Answer

It patches browser async APIs so Angular knows when something might have changed and can run change detection without you telling it. The cost is that it patches everything and triggers checks for events that changed nothing. Signals let a component know precisely what changed, which is why zoneless is the direction.

3

What is a signal and how does it differ from an observable?

Answer

A signal holds a current value and notifies dependents synchronously when it changes — it is state. An observable is a stream over time and models events. Signals suit component state and computed values; observables still suit HTTP, websockets and anything with operators. They are complementary rather than a replacement.

4

What is the difference between `switchMap`, `mergeMap` and `concatMap`?

Answer

switchMap cancels the previous inner subscription when a new value arrives — correct for a typeahead, wrong for a save. mergeMap runs them all concurrently in whatever order they finish. concatMap queues them and preserves order. Choosing the wrong one is how a search shows stale results or two saves land out of order.

5

What does an interceptor do and what belongs in one?

Answer

It sits between the app and HttpClient and can modify a request or a response. Auth headers, a correlation id, a global retry policy and turning a 401 into a redirect all belong there, because they apply to every request and duplicating them per service is how one gets forgotten. Business logic does not belong there.

6

How do you lazy-load a route and why does it matter?

Answer

With loadComponent or loadChildren, which splits that route into its own chunk fetched on navigation. It matters because the initial bundle decides how long the first screen takes, and an admin section nobody visits should not be in it. The check that keeps it honest is looking at the built chunk sizes rather than assuming.

🦎

Reading answers is not enough

In a real interview you speak under pressure. Cam asks these same questions, scores every answer, and shows exactly what to fix.

Practice a Middle Angular Frontend interview →
Free · 3 interviews per month

Other levels — Angular Frontend

Junior Angular FrontendSenior Angular FrontendAll Angular Frontend questions

Other specializations

🔍Middle Manual QA🤖Middle QA AutomationMiddle Java Backend🐍Middle Python Backend🐘Middle PHP Backend🦫Middle Go Backend🟢Middle Node.js Backend💎Middle Ruby on Rails🟣Middle .NET Backend Developer🔷Middle C++