Skip to content

📝 Interview Question Bank for Full Stack Candidates

1. .NET Core (Backend)

  • What’s the difference between ASP.NET Core Web API and gRPC services? When would you choose one over the other?
  • How do you structure a repository pattern using EF Core or NHibernate? Can you explain lazy loading vs. eager loading?
  • Describe how you would implement asynchronous messaging with Azure Service Bus or RabbitMQ.
  • How would you implement distributed transactions in microservices (e.g., Saga pattern)?
  • Explain LINQ performance pitfalls you’ve encountered and how you optimized them.
  • Can you show how to write a unit test with xUnit/NUnit for a REST endpoint?

1. Core .NET & ASP.NET Core Basics

  • What are the main differences between .NET Framework and .NET Core?
  • How does Dependency Injection work in ASP.NET Core?
  • Can you explain the middleware pipeline in ASP.NET Core and how to add custom middleware?

2. REST APIs & gRPC

  • What’s the difference between REST and gRPC? When would you choose one over the other?
  • How do you implement versioning in ASP.NET Core Web API?
  • How do you handle model validation and return standardized error responses?

3. Entity Framework / NHibernate & Data Access

  • What is the difference between DbContext in EF Core and SessionFactory in NHibernate?
  • Can you explain eager vs. lazy loading and when each is appropriate?
  • How do you optimize LINQ queries for performance?
  • What strategies do you use for database migrations in a team environment?

4. Asynchronous Programming

  • Can you explain the difference between Task.Run, async/await, and IAsyncEnumerable?
  • How do you avoid deadlocks in async code?
  • What’s the impact of ConfigureAwait(false) in library code?

5. Messaging & Event-Driven

  • How would you implement message publishing with Azure Service Bus or RabbitMQ in .NET?
  • What’s the difference between queue and topic/subscription models?
  • How do you ensure idempotency when processing messages?
  • Can you explain how you would implement a retry policy for failed message processing?

6. Microservices & Distributed Systems

  • What are the main challenges when building microservices in .NET?
  • How would you implement inter-service communication (HTTP vs gRPC vs messaging)?
  • What is the Saga pattern and how would you use it for distributed transactions?
  • How would you handle service discovery in microservices architecture?

7. Testing & Quality

  • How do you structure unit tests for an ASP.NET Core controller?
  • What’s the difference between unit tests, integration tests, and functional tests in .NET?
  • Which mocking libraries have you used (Moq, NSubstitute, etc.)?
  • Can you explain how you test asynchronous methods?

2. Frontend (Angular / Blazor)

  • How do you structure a typical Angular module?
  • What’s the role of RxJS Observables in Angular, and how do they differ from Promises?
  • How would you integrate an Angular app with a SignalR backend for real-time updates?
  • What’s the difference between Angular forms: template-driven vs. reactive? Which do you prefer and why?
  • How would you ensure i18n (localization) support in Angular?
  • Optional (Blazor): What are the differences between Blazor Server and Blazor WebAssembly?

1. Core Angular Fundamentals

  • What are components, modules, and services in Angular, and how do they interact?
  • What’s the role of NgModules?
  • Can you explain the difference between template-driven and reactive forms?
  • How does change detection work in Angular?

2. TypeScript & JavaScript

  • What features of TypeScript are most useful when building Angular apps?
  • Can you explain the difference between interface and type in TypeScript?
  • What are generics in TypeScript and when would you use them?
  • How do you handle async/await and Promises in frontend code?

3. State Management

  • How would you manage state in a medium-to-large Angular app?
  • What’s your experience with NgRx (or other state management libraries)?
  • How do you decide when to use a service with BehaviorSubject vs. a state library?

4. Data Binding & Communication

  • Can you explain one-way binding, two-way binding, and event binding in Angular?
  • How would you pass data between parent and child components?
  • What’s the role of RxJS Observables in Angular applications?
  • How would you integrate Angular with a REST API and handle errors?

5. Routing & Navigation

  • How does Angular’s Router work?
  • What’s the difference between lazy loading and eager loading modules?
  • How do you implement route guards (e.g., authentication, role-based access)?

6. Real-Time Communication

  • How would you integrate SignalR into an Angular app?
  • Can you explain how to handle websocket disconnections/reconnections gracefully?

7. Blazor Fundamentals (if applicable)

  • What are the differences between Blazor Server and Blazor WebAssembly?
  • How do components in Blazor differ from Angular components?
  • How would you implement dependency injection in Blazor?
  • How would you handle JS interop in Blazor?

8. Testing & Quality

  • How do you test Angular components (e.g., with Jasmine/Karma)?
  • What’s the difference between unit tests and end-to-end tests (Cypress, Playwright)?
  • How do you ensure accessibility (WCAG 2.1) in a frontend app?

3. Architecture & Design

  • Explain Domain-Driven Design (DDD) and how you applied it in practice.
  • Can you outline a simple Clean Architecture structure for a microservice (layers, responsibilities)?
  • How would you design a scalable API that supports millions of requests daily?
  • What is the CQRS pattern and when is it useful?
  • Can you explain event-driven design and its advantages over request-response?
  • What’s the purpose of an API Gateway? Which .NET tools have you used (YARP, Ocelot, Azure API Management)?

1. General Principles

  • What are SOLID principles? Can you give a real-world example of applying one of them?
  • How do you decide when to split functionality into a separate service vs. keeping it in the same application?
  • Can you explain the difference between monolithic, modular, and microservices architectures?

2. Domain-Driven Design (DDD)

  • What are the main building blocks of DDD (entities, value objects, aggregates, repositories, bounded contexts)?
  • How do you identify bounded contexts in a system?
  • What’s the role of a domain service vs. an application service?

3. Clean Architecture

  • Can you outline the layers in Clean Architecture and what belongs in each?
  • How would you prevent business logic leakage into infrastructure layers?
  • What is the difference between hexagonal architecture (ports & adapters) and onion architecture?

4. Messaging & Event-Driven Design

  • Can you explain the difference between commands, events, and queries?
  • What’s the role of an event bus in distributed architecture?
  • What is the Outbox pattern and why is it important?
  • How do you handle eventual consistency between services?

5. Scalability & Reliability

  • What’s the difference between horizontal scaling and vertical scaling?
  • How would you design a system to handle spikes in traffic (e.g., Black Friday load)?
  • How do you implement circuit breakers / retries / fallbacks in .NET?
  • Can you explain idempotency in distributed systems and give an example?

6. API Design

  • What’s the difference between REST, gRPC, and GraphQL? When would you use each?
  • How do you handle API versioning?
  • How do you secure APIs (authentication, authorization, rate limiting)?
  • What is the role of an API Gateway in microservices?

7. Security & Best Practices

  • What’s the difference between OAuth2 and OpenID Connect?
  • How do you manage secrets in a distributed system?
  • How would you prevent common OWASP Top 10 vulnerabilities (XSS, SQL injection, CSRF)?

4. Cloud & DevOps

  • What Azure services have you worked with? Can you describe how you deployed a .NET app to Azure App Service / AKS?
  • Explain the use of Azure Functions. When would you choose them over a background worker (e.g., Hangfire)?
  • What’s your experience with Docker? Can you show how to containerize a .NET Core API?
  • How would you manage secrets in Azure (Key Vault, appsettings, environment variables)?
  • Explain the difference between horizontal scaling and vertical scaling in cloud deployments.
  • Have you worked with Infrastructure as Code (Bicep, Terraform, Pulumi)?

1. Azure Fundamentals

  • Which Azure services have you worked with (App Service, AKS, Functions, Service Bus, Storage, Cosmos DB)?
  • How do you deploy a .NET Core app to Azure App Service?
  • What are the differences between Azure Functions and a background worker (e.g., Hangfire)?

2. Containers & Orchestration

  • How do you containerize a .NET Core API using Docker?
  • What’s the difference between Docker Compose and Kubernetes (AKS)?
  • How do you manage secrets in containers? (Azure Key Vault, env vars, etc.)
  • What’s the role of Helm charts in Kubernetes deployments?

3. CI/CD & Pipelines

  • Can you describe a typical CI/CD pipeline you’ve built for .NET + Angular in Azure DevOps?
  • How would you configure a pipeline to:

  • Run unit tests and fail on coverage <80%?

  • Build Docker images and push to Azure Container Registry?
  • Deploy to multiple environments (Dev/Test/Prod) with approvals?
  • How do you handle feature flags in deployments?

4. Infrastructure as Code (IaC)

  • What’s the difference between ARM templates, Bicep, and Terraform?
  • How would you deploy a full environment (API, DB, Storage, Service Bus) with IaC?
  • Can you explain what Pulumi is and how it differs from Terraform/Bicep?

5. Monitoring & Observability

  • Which observability tools have you used (Serilog, OpenTelemetry, Application Insights, Grafana, Prometheus)?
  • How would you configure distributed tracing for a microservices-based .NET solution?
  • How do you define and monitor SLOs / SLAs in Azure?
  • How would you set up alerts for failures or performance degradation?

6. Resilience & Reliability

  • What’s the difference between retry, circuit breaker, and bulkhead patterns?
  • How would you handle message retries & DLQ in Azure Service Bus?
  • Have you used Chaos Engineering tools (Azure Chaos Studio)? What’s the purpose?
  • How do you ensure a zero-downtime deployment?

7. Security & Compliance

  • How do you integrate OAuth2 / OpenID Connect in a cloud-hosted app?
  • How would you manage secrets and certificates in Azure Key Vault?
  • What steps do you take to ensure GDPR / HIPAA compliance in cloud deployments?
  • How do you secure API endpoints from abuse (rate limiting, WAF, throttling)?

5. Software Processes & Collaboration

  • How do you structure Git branching (GitFlow, trunk-based, feature branches)? Which do you prefer and why?
  • How do you ensure code quality (static analysis, code reviews, PR policies)?
  • Can you describe a typical CI/CD pipeline for a .NET + Angular solution in Azure DevOps?
  • How do you manage dependencies and NuGet packages across multiple microservices?
  • Have you used Docs-as-Code? How do you maintain developer documentation alongside code?
  • How do you handle merge conflicts in a distributed team?

1. Version Control & Branching

  • Which Git branching strategy do you prefer (GitFlow, trunk-based, feature branching)? Why?
  • How do you handle merge conflicts in a distributed team?
  • What’s the difference between rebase and merge? When would you use each?
  • How do you enforce code reviews and pull request policies?

2. Code Quality & Testing

  • How do you ensure code quality in your projects (linters, analyzers, SonarQube, style rules)?
  • What’s the difference between unit tests, integration tests, and end-to-end tests?
  • How do you decide on test coverage thresholds in CI/CD?
  • Do you use BDD/TDD? Can you describe an example workflow?

3. CI/CD & Automation

  • Can you describe a typical pipeline you’ve worked with (build → test → deploy)?
  • How do you handle multi-environment deployments (Dev/Test/Prod) with approvals?
  • How do you automate database migrations in CI/CD pipelines?
  • Have you worked with feature flags in CI/CD (LaunchDarkly, .NET Feature Management, etc.)?

4. Documentation & Knowledge Sharing

  • What’s your experience with Docs-as-Code (Markdown, MkDocs, README standards)?
  • How do you document API endpoints (Swagger/OpenAPI, Scalar)?
  • Do you use ADR (Architecture Decision Records) or similar for architecture documentation?
  • How do you keep documentation in sync with code changes?

5. Agile & Collaboration

  • What’s your role in a Scrum team (stand-ups, sprint planning, retrospectives)?
  • How do you report progress and blockers in a remote/distributed team?
  • What tools have you used for task tracking (Azure DevOps Boards, Jira, Trello)?
  • How do you balance following requirements vs. proposing improvements?

6. Communication & Languages

  • How do you ensure clear communication in multilingual teams?
  • Have you worked in teams where Russian or Hebrew was spoken in addition to English?
  • How do you adjust your communication when explaining technical details to non-technical stakeholders?

🏆 Candidate Evaluation Scoring Matrix

Aspect Weight 1 – Poor 2 – Basic 3 – Competent 4 – Strong 5 – Expert
.NET Core (Backend) 25% No practical .NET Core experience Can build simple APIs but lacks async, EF, messaging depth Solid APIs, async/await, EF basics, some messaging knowledge Strong in APIs, LINQ optimization, async patterns, messaging (Service Bus/RabbitMQ) Deep expertise: DDD in .NET, distributed systems, saga patterns, performance tuning
Frontend (Angular / Blazor) 20% Minimal frontend experience Knows basic Angular/Blazor concepts Can build components, handle forms, routing, REST calls Strong in Angular modules, RxJS, SignalR integration, Blazor interop Expert: architecture decisions, state management (NgRx), i18n, performance tuning
Architecture & Design 20% No clear understanding of architecture Knows terms but little practice Familiar with SOLID, Clean Architecture, basic DDD Applied DDD, Clean/Hexagonal, event-driven patterns in real projects Can design scalable distributed systems, API gateways, security, event-driven with CQRS & Saga
Cloud & DevOps (Azure, CI/CD, Containers) 20% No cloud/DevOps exposure Can deploy manually to cloud Familiar with App Service, Docker basics, simple pipelines Strong in Azure Functions, AKS, IaC (Bicep/Terraform), monitoring Expert: full CI/CD automation, Kubernetes, resilience patterns, observability with OpenTelemetry
Software Processes & Collaboration 15% Struggles with Git, team processes Uses Git but limited branching/CI/CD knowledge Comfortable with GitFlow, PR reviews, task boards Strong in CI/CD, Docs-as-Code, Agile practices, team reporting Leads processes: defines branching strategy, enforces quality gates, drives collaboration

📊 Rating Scale

  • 1 (Poor): No hands-on experience, only theory, or cannot answer.
  • 2 (Basic): Limited knowledge, can perform simple tasks with guidance.
  • 3 (Competent): Can work independently on most tasks, some gaps in depth.
  • 4 (Strong): Solid applied experience, can mentor juniors, only few gaps.
  • 5 (Expert): Deep mastery, architectural decision-maker, proactive problem solver.

đź§® Candidate Score Calculation

For each candidate:

  1. Rate 1–5 per category.
  2. Multiply by weight (e.g., Backend 25%).
  3. Sum for a final score (out of 5.0).

Example:

  • Backend: 4 (Strong) Ă— 0.25 = 1.0
  • Frontend: 3 (Competent) Ă— 0.20 = 0.6
  • Architecture: 3 Ă— 0.20 = 0.6
  • Cloud: 2 Ă— 0.20 = 0.4
  • Processes: 4 Ă— 0.15 = 0.6 Final Score = 3.2 / 5.0