800+ .NET Interview Questions and Answers
Hello, my name is Artem Polishchuk, and I've been working with C# and .NET since 2012. Over the years, I have participated in and conducted hundreds of technical interviews. This guide brings together the most common questions, topics, and discussion points I have encountered from both sides of the interview table.
The goal of this article is to help developers prepare for interviews covering modern C#, .NET, ASP.NET Core, databases, distributed systems, cloud architecture, testing, AI, and many other topics. Whether you're preparing for a Junior, Middle, Senior, Tech Lead, Architect, or Engineering Manager role, you'll find both fundamental and advanced subjects collected in one place.
If you're an interviewer, I would recommend using this list as inspiration rather than a ready-made interview script, since many candidates use resources like this as part of their preparation.
The answers throughout the guide are divided into three levels:
- 👼 Junior: Core concepts and fundamentals
- 🎓 Middle: Practical experience and common real-world scenarios
- 👑 Senior: Advanced topics, trade-offs, architecture, and design decisions
.NET and C# Fundamentals

The answers to the questions below can be found in our separate article: C# / .NET Interview Questions and Answers: Part 1 – Core Language & Platform Fundamentals.
- What is C#? How does it differ from languages like C or C++?
- NET Framework vs .NET Core vs .NET 5+: What You Need to Know?
- What is the Common Language Runtime (CLR)?
- What is the Common Type System (CTS)?
- What is the Common Language Specification (CLS)?
- What is a Just-In-Time (JIT) compilation in .NET?
- Explain the Native AOT (Ahead-of-Time)
- What are assemblies in .NET? Explain the Global Assembly Cache (GAC).
- What is the Difference Between Managed and Unmanaged Code?
- Explain the difference between Value Types and Reference Types in .NET.
- What is Garbage Collection in .NET, and how does it work?
- What is the difference between an Abstract Class and an Interface in C#?
- Explain the concept of Boxing and Unboxing in C#
- What is the difference between const and readonly in C#?
- What is the purpose of the using statement in C#?
- What is Exception Handling in C#, and how is it implemented?
- What is the difference between throw and throw ex in C#?
- What is the difference between finalize and dispose methods in .NET?
- What are extension methods in C#, and how are they used?
- Describe how Source Generators work in C#
- What is reflection in C#, and what are its typical use cases?
- Explain the concept of delegates and events in C#
- What is the difference between early binding and late binding in C#?
- What is the difference between ref and out parameters in C#?
- What is the purpose of the params keyword in C#?
- What is the purpose of the static keyword in C#?
- Explain the concepts of Covariance and Contravariance in .NET.
- What is Dependency Injection (DI), and why is it essential in .NET?
- Explain immutability in C# and how record help achieve it.
- What is Pattern Matching in C#, and where is it used?
- What are Primary Constructors in C# 12, and how do they differ from traditional constructors?
- Explain the Collection Expressions introduced in C# 12. How do they simplify collection initialization?
- Describe the enhancements made to Pattern Matching in C# 12
- What is the purpose of the new 'field' keyword introduced in C# 12?
- What are the new LINQ methods CountBy and AggregateBy in .NET 9, and how do they enhance data querying?
- What new cryptographic features have been added in .NET 9?
- How do you implement monitoring and logging mechanisms in C# to track program operation and detect problems?
- How does the Equals method work?
- How do we dynamically use type indexing in C# to create objects and call methods at runtime?
- What are Dynamic Types in C#?
- What is the Dynamic Language Runtime (DLR)?
- What are symbolic links in .NET? How do you create symbolic links in .NET?
- What are the required members in C#, and why were they introduced?
- What is trimming in .NET, and why is it important for modern cloud-native applications?
- How does ReadyToRun (R2R) differ from JIT and Native AOT?
- What is Profile Guided Optimization (PGO), and how does it improve .NET performance?
- What are the new File-Based Apps introduced in .NET 10?
- What are Extension Members in C# 14, and how do they differ from Extension Methods?
- What is the new null-conditional assignment operator in C# 14?
- What are partial properties and partial events in C# 14?
Types and Type Features

The answers to the questions below can be found in our separate article: C# / .NET Interview Questions and Answers: Part 2 – Types and Type Features
- What is the purpose of the dynamic keyword in C#, and how does it differ from var?
- What are Tuples in C#, and what is their use case?
- How does the Span<T> type improve performance in C#?
- Explain the role of the default literal in C# and its use cases.
- What is an Expression Tree?
- What are records in C#, and how do they simplify immutable type design?
- What are ref locals and ref returns in C#, and how do they differ from regular variables?
- What is a readonly struct, and how does it differ from a regular struct?
- Explain the concept of nullable reference types introduced in C# 8.0.
- What are nullable value types, and how are they used?
- What are generics in C#, and what problems do they solve?
- What are anonymous types, and when would you use them?
- What is the difference between struct and class in C#?
- What are enums, and how do you use them?
- What are attributes in C#, and how are they applied?
- What is the purpose of the sealed keyword?
- What are partial types, and what are their benefits?
- What is the difference between as and explicit casting?
- What are type constraints in generics?
- Why is it important to override Equals() and GetHashCode() for value types?
- What are the benefits and Use Cases of the init accessor introduced in C# 9.0?
- What is stackalloc, and how does it optimize memory allocation?
- How do with expressions simplify creating modified copies of immutable objects?
- What is a target-typed new expression, and when should you use it?
- What is the fixed statement in C#, and when would you use it?
- How can you suppress nullable warnings using the null-forgiving operator !?
- What is the difference between float, double, and decimal in C#?
- What are nint and nuint types in C#, and when are they useful?
- What is a ref struct in C#, and why are they restricted to the stack?
- What is the purpose of the unmanaged constraint in generics?
- What are function pointers (delegate*) in C#, and when would you use them?
- What are static abstract interface members, and how do they enable Generic Math in .NET?
- What problem does Generic Math solve in .NET?
- What is the difference between shallow immutability and deep immutability?
- What is the difference between EqualityComparer<T>.Default, Equals(), and ReferenceEquals()?
Collections and Data Structures

The answers to the questions below can be found in our separate article: C# / .NET Interview Questions and Answers: Part 3 – Collections and Data Structures
- What Is Big O Notation, and Why Is It Important in C# Collections?
- Can you explain and compare the efficiency of .NET collections?
- Explain the difference between a one-dimensional and a multidimensional array in C#
- What are Inline Arrays in C# 12, and what advantages do they offer?
- What is the difference between jagged and multidimensional arrays in C#?
- What is ArrayPool<T> in C#, and how does it optimize array memory usage?
- What is array covariance in C#, and its potential pitfalls?
- Why are strings immutable in C#, and what are the implications for collections?
- What is the difference between String and StringBuilder in C#?
- What is string interning in C#, and when should you use String.Intern()?
- What are the differences between List<T> and arrays in C#?
- What is LinkedList<T>, and how does it differ from List<T>?
- When would you choose LinkedList<T> over List<T> based on performance?
- What are the primary differences between a stack and a queue?
- What is PriorityQueue<TElement, TPriority> collection, and how does it work?
- What is a Dictionary, and when should we use it?
- What is SortedDictionary<TKey, TValue>, and how does it differ from Dictionary<TKey, TValue>?
- What is SortedSet<T>, and how does it differ from HashSet<T>?
- How do you implement a custom key type for a Dictionary<TKey, TValue>?
- What is a binary search tree, and how would you implement one in C#?
- What are the differences between IEnumerable<T>, ICollection<T>, and IList<T> interfaces?
- What is IReadOnlyCollection<T>, and when would you use it?
- What is IReadOnlyList<T>, and how does it differ from IReadOnlyCollection<T>?
- How does managing List<T> initial capacity improve performance?
- What is HashSet<T>, and when would you choose it over List<T>?
- How does Dictionary<TKey, TValue> handle key collisions??
- What is ImmutableList<T>, and when should you use it in C#?
- What is ObservableCollection<T>, and how does it differ from List<T> in the UI applications?
- What is ConcurrentDictionary<TKey, TValue>, and how does it differ from Dictionary<TKey, TValue>?
- How do atomic operations like GetOrAdd work in ConcurrentDictionary<TKey, TValue>?
- What is ConcurrentQueue<T>, and when would you use it in multi-threaded scenarios?
- What is ImmutableArray<T>, and how does it differ from List<T>?
- What is ReadOnlyCollection<T>, and what are its limitations?
- How does LINQ interact with collections, and what are common performance pitfalls?
- What .NET engineers should know about LINQ and collections
- What is Memory<T>, and how does it enhance collection performance?
- What are the implications of value vs. reference types in collection performance?
- What are FrozenDictionary<TKey,TValue> and FrozenSet<T>, and when should you use them?
- FrozenDictionary vs Dictionary vs ImmutableDictionary vs ReadOnlyDictionary. When should you choose each?
- What is Lookup<TKey,TElement>, and how does it differ from Dictionary<TKey,List<T>>?
Async & parallel

The answers to the questions below can be found in our separate article: C# / .NET Interview Questions and Answers: Part 4 – Async & Parallel Programming
- What is Runtime Async in .NET 11, and how does it differ from the traditional async/await implementation?
- What is the difference between asynchronous programming using async/await and traditional multithreading?
- What is the relationship between a Task and the .NET ThreadPool?
- How does the C# compiler transform an async method under the hood (state-machine generation, captured context, etc.)?
- Explain the purpose of SynchronizationContext and how it affects continuation scheduling in async/await
- What problems can arise if you mix synchronous blocking (Task.Wait, .Result) with asynchronous code, and how do you avoid them?
- How does TaskCompletionSource let you wrap callback-based APIs as tasks, and what pitfalls should you watch for?
- What are fire-and-forget tasks, why are they risky, and how can you safely monitor/handle their failures?
- What is the difference between Task and ValueTask in asynchronous programming, and when should you prefer one over the other?
- How do you cancel an asynchronous operation in .NET, and what are the best practices for using cancellation tokens?
- Describe how IAsyncDisposable works and when you would implement it.
- How does an async iterator (IAsyncEnumerable<T>) differ from a synchronous iterator
- What are the methods of thread synchronization?
- How does the lock work? Can structures be used inside a lock expression?
- What is a race condition, and how can you detect and prevent it?
- What is the difference between Semaphore and SemaphoreSlim?
- Compare ReaderWriterLockSlim with a simple lock (monitor) for protecting shared data.
- When would you choose a ManualResetEventSlim over a SemaphoreSlim, and what are the memory/performance trade-offs?
- Explain how CountdownEvent and Barrier Coordinate multi-stage work and provide a use case for each.
- How do deadlocks manifest in asynchronous code, and what techniques help you avoid them?
- How does Parallel.ForEachAsync improves over Parallel.ForEach, and what caveats exist for I/O-bound vs. CPU-bound loops?
- Explain PLINQ (AsParallel) merge options and how they impact ordering and throughput.
- What is a partitioner, and why is custom partitioning important for load balancing in parallel loops?
- Compare Parallel.Invoke with manually creating multiple Tasks joined by Task.WhenAll.
- What are the advantages and disadvantages of using value-type locals inside a highly parallel loop?
- What is a Channel<T> in C#, and why should you use it?
- When to use Channel<T>
- When would you choose Channel<T> over other concurrency constructs?
- Compare System.Threading.Channels with BlockingCollection<T> for implementing producer-consumer patterns.
- How do bounded vs. unbounded channels control memory growth, and when should you choose one over the other?
- When to choose each
- What .NET engineers should know
- How do you gracefully shut down a channel-based pipeline without losing data?
- What are System.IO.Pipelines in .NET, and when would you use them instead of streams or channels?
Design Patterns

The answers to the questions below can be found in our separate article: Part 5: Design Patterns – C# / .NET Interview Questions and Answers
- How do you detect and fix a God Object in a legacy .NET codebase?
- Explain YAGNI ("You Aren't Gonna Need It") with an example from your past projects.
- What .NET engineers should know about YAGNI:
- What's the difference between DRY and the Single Responsibility Principle, and when might they conflict?
- How can Low Coupling and High Cohesion from GRASP be measured or evaluated in a C# class design?
- How do Protected Variations and Pure Fabrication support extensible and decoupled architectures?
- Describe an instance of the Service Locator anti-pattern, and how you would convert it to Dependency Injection.
- What code smells indicate GRASP principle violations, and how did you refactor them?
- Can you explain what the SOLID principles are in practice?
- How do you balance the Open/Closed Principle with frequent business changes in agile teams?
- What's the difference between an Anemic Domain Model and a strong Rich Domain Model? How can you prevent accidentally using the weaker one?
- Can you explain the Richardson Maturity Model and how to evaluate the maturity of your APIs
- How do you ensure thread safety in a Singleton implementation without compromising performance?
- Explain why Object Pool is helpful in .NET, and how to implement it.
- How do Decorator and Adapter interact in layered .NET microservices?
- Describe applying Composite in UI rendering or building tree-structured data.
- Give a case for using a Facade over a direct service approach.
- How can Flyweight be used in C#? Can you provide examples of implementation from the .NET?
- Which pattern is used under the hood for Middleware in ASP.NET Core?
- Where is Prototype dangerous in C# due to mutable state trees?
- Compare Lazy Singleton with IOptionsMonitor for dynamic config scenarios.
- How to select when to use Abstract Factory vs DI and Func<T>?
- How could you implement Sidecar proxies for logging/security next to a .NET service?
- When would you choose Database-per-Service, and how do you coordinate consistency?
- Describe in which scenarios it makes sense to implement the Event Sourcing pattern.
- Which patterns could be used for decomposing a monolith into macro/micro services?
- Have you had experience with Service Discovery (e.g., via Consul)?
- How would you design a Rate Limiter pipeline using ASP.NET Core's RateLimiter middleware?
- Compare Sidecar vs Service Mesh. When does complexity pay off?
- Which type of project structure do you use to organize a .NET project?
- Compare Vertical Slice Architecture with Feature-Folder
- In a green-field project, when is a monolith preferable to microservices, and what hard limits eventually force a split?
- How to handle the request/reply pattern in EDA architecture?
- What are the pros and cons of combining UnitOfWork + Repository + CQRS?
- Can you describe the "Outbox Pattern" and the problem it solves
ASP.NET Core

The answers to the questions below can be found in our separate article: Part 6: ASP.NET Core Interview Questions and Answers
- What is ASP.NET Core, and how does it differ from the old ASP.NET (Framework)?
- What is Kestrel, and can ASP.NET Core run without IIS?
- How does the ASP.NET Core request processing pipeline work, and what is middleware?
- How do you create a custom middleware in ASP.NET Core?
- What's the difference between app.Use(), app.Run(), and app.Map() in the middleware pipeline?
- What is routing in ASP.NET Core, and how is it configured?
- How to host and deploy ASP.NET Core cross-platform?
- How to implement global error handling, and why prefer UseExceptionHandler middleware over exception filters?
- How to serve static files in ASP.NET Core and configure caching headers for them?
- What is endpoint routing, and how does it improve performance compared to the old routing system?
- What is the "minimal hosting model" introduced in .NET 6, and how does it differ from the previous Startup.cs model?
- How do you configure services and the HTTP request pipeline in ASP.NET Core?
- What is the difference between a Generic Host and a Web Host in ASP.NET Core?
- What are IHostedService and BackgroundService, and when should you use them?
- IHostedService vs BackgroundService vs schedulers — when to choose what?
- How does built-in Dependency Injection (DI) work in ASP.NET Core, and what are service lifetimes?
- Which DI antipatterns do you know in ASP.NET Core?
- Can you describe use cases for [FromKeyedServices] attribute in DI?
- How is configuration handled in ASP.NET Core?
- What advanced DI features exist (TryAdd, Replace, Remove), and when should you use them?
- How does the Options pattern work (IOptions, IOptionsSnapshot, IOptionsMonitor), and when to use each?
- What configuration providers are available (Azure Key Vault, AWS Secrets Manager, database)?
- What pitfalls exist when using scoped services in async background tasks?
- What are Minimal APIs in ASP.NET Core, and how do they differ from using Controllers (MVC)?
- What is model binding and model validation in ASP.NET Core MVC?
- What is model validation in ASP.NET Core MVC?
- What are filters in ASP.NET Core, and how do they differ from middleware?
- What is the difference between Razor Pages and MVC in ASP.NET Core, and when might you use Razor Pages?
- What is Blazor, and how do Blazor WebAssembly and Blazor Server differ?
- How to implement API versioning in ASP.NET Core (URL, query, header)?
- How to handle file uploads and large requests in ASP.NET Core?
- How does content negotiation work, and how do you customize response formatting?
- What is gRPC in ASP.NET Core, and when should you use it over REST?
- What are common approaches to authentication in ASP.NET Core (cookie-based auth vs JWT bearer tokens)?
- What is policy-based authorization in ASP.NET Core, and how is it different from role-based authorization?
- What is CORS, and how to configure CORS in an ASP.NET Core application?
- What is ASP.NET Core Identity, and when should you use it?
- What is the Data Protection API, and how does ASP.NET Core handle key management?
- How to implement CSRF protection in ASP.NET Core?
- What is the SameSite cookie setting, and why does it matter for cross-domain scenarios?
- What OWASP-recommended security features should be enabled in ASP.NET Core?
- What logging capabilities does ASP.NET Core provide, and how do you configure logging?
- How do you implement caching in ASP.NET Core, and what are the different types of caching available (in-memory, distributed, response/output caching)?
- What is the rate-limiting middleware in ASP.NET Core, and why is it useful?
- How would you implement health checks in ASP.NET Core, and what are they used for?
- Why is using HttpClientFactory recommended for making HTTP calls in ASP.NET Core?
- How can you run background tasks or scheduled jobs in ASP.NET Core?
- What is SignalR in ASP.NET Core, and what are its typical use cases?
- What is the OutputCache middleware (.NET 7+), and how is it different from ResponseCaching?
- How to enable response compression in ASP.NET Core?
- How to integrate OpenTelemetry for distributed tracing and metrics in ASP.NET Core?
- How to scale SignalR with Redis backplane or Azure SignalR Service
- How to add Polly resilience policies (retry, circuit breaker) with HttpClientFactory?
- How to benchmark and profile ASP.NET Core apps?
- How to test ASP.NET Core apps with WebApplicationFactory for integration testing?
- What are the best practices for deploying ASP.NET Core apps cross-platform?
- How to make ASP.NET Core apps scalable and cloud-ready?
- How to implement localization and globalization in ASP.NET Core (IStringLocalizer)?
SQL Database

The answers to the questions below can be found in our separate article: SQL Database Interview Questions and Answers
- What is normalization, and when would you denormalize your schema?
- How would you explain the ACID properties to a junior developer, and why are they important?
- What does SARGability mean in SQL?
- What's the difference between a WHERE clause and a HAVING clause? Can you give a practical example of when you'd need HAVING?
- What's the difference between INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL OUTER JOIN?
- Let's say you have a table for Posts and Comments. How would you model the database to retrieve a post along with all its associated comments efficiently?
- How would you model a "self-referencing" relationship, like an employee-manager hierarchy, in a SQL table?
- What's the difference between a Primary Key, Unique Key, and Foreign Key?
- How do foreign keys affect data integrity and performance?
- When would you use a junction table in a many-to-many relationship?
- How would you return all users and their last order date, even if some users have no orders?
- How does a subquery differ from a JOIN?
- What is a Common Table Expression (CTE) and how does it differ from a temporary table?
- What are window functions (ROW_NUMBER, RANK, DENSE_RANK, etc.), and where are they useful?
- You have a query that needs to filter on a column that can contain NULL values. What are some pitfalls to avoid?
- How do you decide between using a JOIN in the database versus handling the relationship in your application code?
- What is the difference between COUNT(*) and COUNT(column_name)?
- How can you pivot or unpivot data in SQL?
- How do you find duplicates in a table?
- What's the difference between UNION and UNION ALL?
- What's the difference between a clustered and a non-clustered index?
- Can you explain what a composite index is and why the order of columns in it matters?
- What are the different types of indexes available in SQL databases?
- How would you debug a slow query, and what tools would you use?
- What is parameter sniffing, and how can it cause performance issues?
- How does indexing improve read performance but slow down writes?
- Could you explain what a covering index is and how it can enhance performance?
- What are the best practices for indexing large tables?
- How do database statistics affect query performance?
- What is the purpose of the NOLOCK hint in SQL Server, and what are the serious risks of using it?
- What is a CHECK constraint, and when would you use it?
- When would you consider using a database view, and what are its limitations?
- What's the difference between views and materialized views?
- What are the pros and cons of using stored procedures?
- How do you efficiently pass a list of values to a stored procedure in SQL Server versus PostgreSQL?
- What's the difference between temporary tables and table variables?
- How would you enforce a business rule like "a user can only have one active subscription" at the database level?
- What are some strategies for efficiently paginating through a huge result set, as opposed to using OFFSET/FETCH?
- What is a trigger, and when should it be avoided?
- How can you implement audit logging using SQL features?
- How can you use SQL window functions to calculate rolling averages or cumulative totals?
- ORM vs Raw SQL Query — When to Use What
- How would you explain the difference between the DB isolation levels?
- What's the difference between pessimistic and optimistic locking?
- How do you detect and prevent deadlocks?
- How would you design a retry policy for failed transactions?
- What's the difference between OLTP and OLAP systems?
- What is table bloat in PostgreSQL, and how does the autovacuum process help manage it?
- What are database partitions, and when should you use them?
- How would you archive old records without affecting query performance?
- How would you secure sensitive data at rest and in transit?
- How would you design a reporting database separate from the OLTP database?
- What is "Sharding" and what are the biggest challenges when implementing it?
- How would you configure high availability and disaster recovery for a critical SQL Server database?
- How can you reduce locking contention in a high-write environment?
- Can you define a transaction and give an example of a business operation that absolutely needs to be wrapped in one?
- A page in your application is loading slowly. How would you systematically determine if the problem is a database query?
- How does database connection pooling work in .NET, and what are some common mistakes that can break it?
- If you had to improve the performance of a large DELETE or UPDATE operation, what strategies would you consider?
- How would you handle a situation where a necessary query is just inherently slow due to the volume of data it needs to process?
- What's the purpose of the STRING_AGG or FOR XML PATH techniques in SQL? Can you think of a use case?
- What are the trade-offs of using AsNoTracking() in EF Core?
- You need to insert 100,000 records. What's wrong with using a simple loop with SaveChanges(), and what would you do instead?
- How can you use projections in EF Core to optimize a query that only needs a few fields?
- What exactly is the "N+1 query problem," and how have you solved it in EF Core?
- How would you explain the Unit of Work and Repository patterns to someone just starting with EF Core? Does the DbContext itself implement these?
- How do you manage the lifetime of your DbContext in a modern ASP.NET Core application? Why shouldn't it be a singleton?
- Let's say you have a complex, pre-tuned SQL query. How do you execute it and get the results back into your .NET code using EF Core?
- How does EF Core handle concurrency conflicts? Can you describe a scenario where you've had to implement this?
- How do you seed reference data (like a list of countries or product categories) using EF Core migrations?
- What are owned entities in EF Core, and when would you use them?
- How do you configure a many-to-many relationship in EF Core?
- What are global query filters, and what's a practical use case for them?
- Can you explain what a shadow property is in EF Core?
- How does EF Core decide whether to issue an INSERT or an UPDATE when you call SaveChanges()?
NoSQL Databases

The answers to the questions below can be found in our separate article: NoSQL Interview Questions and Answers for .NET Developers
- What are the main categories of NoSQL databases?
- How do you decide between SQL and NoSQL for a new feature?
- What are common read/write patterns in NoSQL (GetByID, fan-out, time-series, append-only)?
- How do ACID and BASE principles differ in the context of NoSQL?
- How does the CAP theorem influence database architecture design?
- What are typical consistency models?
- What are polyglot persistence patterns, and when are they appropriate?
- How would you model relationships in NoSQL systems that don't support joins?
- What are common anti-patterns in NoSQL data modeling?
- What's the difference between schema-on-write and schema-on-read?
- How do you handle data versioning and schema evolution in NoSQL systems?
- How do you implement referential integrity or constraints in a NoSQL world?
- If you were designing a blog post with comments, would you embed comments or use a separate collection?
- What are the trade-offs between MongoDB's flexible schema and the rigid schema of a relational database?
- How does MongoDB handle transactions, and what are the differences between its approach and that of a relational database?
- How do you approach indexing in a document database like MongoDB compared to a relational database?
- How does the aggregation pipeline work, and when would you use it?
- What's the difference between replica sets and sharded clusters?
- How does MongoDB achieve horizontal scalability?
- How do you identify and fix slow queries?
- How do you enforce schema validation with JSON Schema?
- What's your approach to managing extensive collections or time-series data?
- How does Azure Cosmos DB differ from MongoDB and DynamoDB?
- What is a partition key in Cosmos DB, and what happens if you pick a bad one?
- What is the change feed in Cosmos DB, and what are some cool things you can build with it?
- How would you explain the different consistency levels in Cosmos DB, and when would you choose one over another?
- How does Cosmos DB charge based on Request Units (RUs), and how can you optimize costs?
- How do you design for multi-region writes and geo-replication?
- How would you model time-series data in Cosmos DB?
- What is DynamoDB, and how is it different from MongoDB?
- What is the primary key structure in DynamoDB (partition key vs. sort key)?
- How do Global Secondary Indexes (GSI) and Local Secondary Indexes (LSI) differ?
- What are best practices for choosing a partition key in DynamoDB?
- How would you design a one-to-many or many-to-many relationship in DynamoDB?
- How do you model access patterns before designing your tables in DynamoDB?
- What is DynamoDB Streams, and how can it be used with AWS Lambda?
- How do you handle pagination and query filters efficiently in DynamoDB?
- How would you implement optimistic concurrency control in DynamoDB?
- What are the limitations of transactions in DynamoDB?
- Let's talk about caching. How would you use Redis in a .NET app to take load off your primary database?
- What are strategies for data synchronization between Redis and the primary data source?
- What is the Redis data type you'd use to implement a leaderboard, and why?
- Can you describe a scenario where you would use Redis Pub/Sub?
- How do you choose between RDB and AOF persistence?
- What's the difference between Redis Cluster and Sentinel?
- Can you describe use cases when Redis will be a bad choice?
- How does Elasticsearch differ from a traditional database in structure and purpose?
- What's the role of index, shard, and replica in Elasticsearch?
- How does Elasticsearch achieve near real-time search?
- What are analyzers, tokenizers, and filters, and why are they important?
- What's the difference between term and match queries?
- How do you troubleshoot shard imbalance and optimize query latency?
- What's the typical architecture of an ELK (Elasticsearch + Logstash + Kibana) stack?
- What is a Parquet file, and why is it efficient for analytical workloads?
- How do columnar storage formats improve query performance?
- What's the difference between Parquet, Avro, and ORC?
- How do you handle schema evolution in Parquet?
- What is Delta Lake, and how does it enhance Parquet?
- How would you optimize data partitioning in Parquet for large-scale queries?
- What is a graph database, and how is it different from other NoSQL databases?
- When should you use a graph database over SQL or document databases?
- What is Cypher, and how does it work in Neo4j?
- What is Gremlin, and how is it different from Cypher?
- How do you model 1:1, 1:N, and N:N relationships in Graph DB?
- How do you handle query performance in graph databases?
- What's the difference between property graphs and RDF?
- What are common anti-patterns of Graph databases?
- How do you manage the scaling of Graph databases?
- How do you secure data in a graph database?
- What is a knowledge graph?
- How do you benchmark graph query performance?
- What are the limitations of graph databases?
- What is a vector database, and how does it differ from traditional databases?
- How do vector databases store and search vectors?
- When would you choose a Vector DB instead of Elasticsearch or SQL full-text?
- What are the trade-offs between storing vectors inside your SQL/NoSQL database vs using a dedicated vector DB?
- How do embeddings represent meaning in text, images, or audio?
- What is cosine similarity, and why is it used for semantic search?
- What is the difference between ANN search and exact search, and when do you need exact search?
- How do you scale vector databases (sharding, replication, partitioning)?
- How do you secure a vector DB API (metadata leaks, embedding inference risks)?
Microservices and Distributed Systems

The answers to the questions below can be found in our separate article: Microservices And Distributed Systems Interview Questions and Answers for .NET Developers
- When does it make sense to isolate background processing into a separate microservice?
- How do you decide between a modular monolith and microservices?
- What is the Strangler Fig pattern, and how do you use it to migrate a legacy system?
- How do you define service boundaries using DDD Bounded Contexts?
- What is Backends-for-Frontends (BFF), and where does it help?
- What is the difference between a Domain Event and an Integration Event in a microservices architecture?
- What architectural smells appear when teams split a monolith into services?
- Compare Saga orchestration vs choreography for distributed transactions.
- What is Event-Carried State Transfer, and how does it reduce temporal coupling?
- What is service discovery, and how do client-side and server-side discovery differ?
- Why is DNS discovery not ideal in dynamic systems?
- When is a service mesh worth the complexity?
- What is a sidecar, and how is it used in distributed systems?
- What role does an API Gateway play in microservices?
- How do feature flags influence deployments and testing?
- What is a control plane vs a data plane in distributed systems?
- What is the difference between synchronous and asynchronous service communication?
- When do you choose REST, gRPC, or messaging?
- When should you use gRPC streaming?
- Why are message brokers used in distributed systems?
- What are at-least-once, at-most-once, and exactly-once delivery semantics?
- How do you ensure idempotency in a .NET message consumer?
- What is the Competing Consumers pattern, and when is it useful?
- What is a Dead Letter Queue, and how do you design reprocessing logic?
- What is the Outbox pattern, and why do distributed systems rely on it?
- What is the Inbox pattern, and how does it support end-to-end consistency?
- How do you handle validation of API/Contract changes across microservices?
- How do MassTransit or NServiceBus simplify messaging compared to raw clients?
- How do you avoid temporal coupling between producers and consumers?
- Why is 2PC avoided in microservices, and what are the alternatives?
- How do you implement a saga, and how do compensating steps work?
- When would you avoid event sourcing in enterprise systems?
- How do you choose distributed IDs, and which IDs are best?
- What is eventual consistency, and how do you communicate its impact to the business?
- What is the difference between logical clocks and physical clocks?
- What is write-skew, and how does it appear in distributed systems?
- What is monotonic read consistency, and why does it matter?
- What is a distributed deadlock, and how does it occur?
- What is split-brain, and how do systems avoid it?
- How do you design safe retry strategies across multiple services?
- What is a circuit breaker, and when do you need one?
- How does Bulkhead isolation in .NET protect against cascading failures in microservices?
- What is backpressure, and how do you apply it to message processing?
- How do you handle poison messages that repeatedly crash consumers?
- What patterns help with long-running workflows or batch jobs?
- What RED and USE metrics should you instrument?
- How do you authenticate and authorize between microservices?
- What is a token exchange, and when is it used?
- Why is secret rotation important in distributed systems?
- How do you secure internal service communication in Kubernetes?
- What is zero-trust networking, and why is it growing in popularity?
- How can you reuse a user token across multiple microservices for authorization?
- What is the difference between latency and throughput?
- Why does chatty communication break performance in microservices?
- How do you design services that scale horizontally?
- What is load shedding, and when should you apply it?
- How do you reduce the cost of cross-region traffic?
- What is the Tail-at-Scale problem, and how do you mitigate it?
- What is a distributed scheduler, and how do you handle fault-tolerant recurring jobs?
- How do you detect memory leaks in .NET microservices?
- What is .NET Aspire, and what problems does it solve for cloud-native apps?
- How do Aspire resources differ from normal DI registrations?
- What is Aspire service discovery, and how does it connect distributed components?
- How does Aspire handle configuration for distributed systems?
- What are the limits of Aspire today, and when should you avoid it?
- What is YARP, and when would you build your own gateway?
- What is Dapr, and how do its building blocks differ from usual SDKs?
- What are the trade-offs of containers vs serverless for .NET workloads?
- How does .NET Native AOT improve cold starts in serverless scenarios?
- Why do stateless services scale more easily than stateful ones?
- How do you optimize microservices for Native AOT without losing flexibility?
- What is the Orleans virtual actor model, and how does it differ from classic actor systems?
- What are grains, and how do they achieve location transparency?
- How does Orleans handle distributed state without explicit locks?
- What are Orleans Streams, and when should you prefer them to message brokers?
- What is the Orleans Silo, and how does clustering work?
- How do you scale grains across a clustered environment?
- How does Orleans differ from Dapr actors?
- What are the main Orleans failure modes, and how do you mitigate them?
- How do you handle grain versioning and schema evolution?
- How do you integrate Orleans with ASP.NET Core for request-driven scenarios?
Testing

The answers to the questions below can be found in our separate article: C# Testing Interview Questions and Answers
- What makes a test a "unit test" in C#, and what is usually mislabeled as unit?
- What do you test: behavior, state, or interactions, and why?
- Dummy vs Mock vs Stub vs Fake vs Spy: what is the difference, and when to use each?
- How do you avoid testing implementation details while still getting confidence?
- What are the most common test smells in .NET codebases, and how do you fix them?
- How do you structure tests for readability?
- How do you test cancellation and verify cancellation is actually honored?
- How do you test time and scheduling deterministically (timeouts, delays, cron-like logic)?
- If code is hard to test, what do you refactor first to make it testable?
- How do you test EF Core migrations and schema changes?
- What do you consider an integration test in .NET, and what is still unit-level?
- What do you run "real" in integration tests (DB, cache, queue), and what do you fake?
- Why is an in-memory DB often a bad choice compared to a real database for integration testing?
- How do you seed data for integration tests without making tests slow and coupled?
- How do you isolate the state between tests?
- How do you use Testcontainers.NET for SQL Server/Postgres/Redis/Kafka in tests?
- What are the challenges of running test containers on Windows agents?
- How do you test file upload/download endpoints?
- How do you test ASP.NET Core endpoints without duplicating implementation logic in tests?
- How do you test authentication and authorization policies reliably?
- How do you test middleware behavior?
- How do you test versioning behavior (URL/header/query) and deprecation responses?
- How do you integration-test a gRPC service in .NET without going "full E2E"?
- How do you test gRPC status codes and error details?
- How do you validate metadata/headers in gRPC calls?
- How do you test deadlines and cancellation in gRPC?
- How do you test streaming gRPC methods (server streaming, client streaming, duplex)?
- How do you test retry behavior safely for gRPC calls?
- How do you test the backward compatibility of protobuf contracts?
- How do you test gRPC JSON transcoding (if you expose REST endpoints over gRPC services)?
- How do you test interceptor behavior (logging, auth, retries) without making tests brittle?
- What is consumer-driven contract testing, and when should you use it?
- How do you test event/message contracts in event-driven architectures?
- What is contract testing, and when is it better than integration testing?
- How would you write contract tests between a BFF and its downstream services (REST and gRPC)?
- How do you evolve contracts safely (versioning, compatibility, provider verification)?
- What do contract tests miss, and how do you cover those gaps?
- How do you test systems where each service can fail independently?
- How do you test idempotency in message consumers (duplicate delivery, out-of-order, replay)?
- How do you test message replay safely, including side effects (emails, payments, DB writes)?
- How do you test poison messages and DLQ flow,s including reprocessing logic?
- How do you validate message schema compatibility across versions?
- Describe the testing strategy for Saga workflows (orchestration vs choreography).
- How do you test long-running workflows without waiting minutes in tests?
- Describe the testing strategy for Event Sourced workflows.
- How do you test projections/read models and eventual consistency without sleeps?
- How do you test microservices with shadow traffic or dark reads, and what do you compare?
- How do end-to-end integration tests work when an API Gateway is in front?
- How do you cover policy-enforced code paths in sidecar/proxy logic (auth, routing, rate limits)?
- How do you test request/response transformations (headers, claims, body rewriting) without brittle assertions?
- How do you validate observability propagation across the gateway and services (trace headers, correlation IDs)?
- How do you test "policy as code" changes so that a config tweak doesn't break production?
- How do you mock or test Polly-based policies and circuit-breakers?
- How do you test concurrency limits and bulkheads in request pipelines?
- What is chaos engineering, and what failures can it uncover that normal tests miss?
- What's the difference between E2E UI tests and API-level E2E tests, and when do you pick each?
- When do you choose Playwright over Selenium, and why?
- How do you design selectors to avoid brittleness (roles, accessible names, data-testid)?
- How do you handle dynamic UI (spinners, async rendering) without sleeps?
- How do you structure E2E tests (page objects vs screenplay vs raw flows), and what trade-offs exist?
- How do you test accessibility (keyboard nav, focus order, screen-reader-friendly names) as part of E2E?
- Load vs stress vs soak: what does each prove?
- What do you measure besides averages (p95/p99, error rate, saturation, queue depth)?
- How do you handle flaky tests operationally?
Desktop Development

The answers to the questions below can be found in our separate article: C# Desktop Development Interview Questions and Answers
- What is WinUI 3, and how does it differ from UWP and WPF?
- How do you implement drag-and-drop between your desktop app and the OS in WinUI 3 or WPF?
- What is the Windows App SDK, and what problems does it solve over the classic Win32/UWP split?
- How does the WinUI 3 threading model work, and how do you marshal UI updates from background threads?
- What is the XAML Islands feature, and when would you use it to migrate a WPF/WinForms app?
- How do you handle packaging and deployment in WinUI 3?
- How does WinUI 3 integrate with the Windows notification and lifecycle system?
- What is .NET MAUI, and how does it differ from Xamarin.Forms?
- How does the .NET MAUI single project structure work across Android, iOS, Windows, and macOS?
- What are MAUI Handlers, and how do they replace Xamarin.Forms Renderers?
- How does .NET MAUI implement dependency injection, and what is the MauiAppBuilder lifecycle?
- What is the Shell navigation model in MAUI, and how does it compare to manual navigation stacks?
- How do you handle platform-specific code in MAUI using partial classes and platform folders?
- What are MAUI Essentials, and what categories of native device APIs do they expose?
- How does .NET MAUI handle hot reload, and what are its current limitations?
- How do you optimize MAUI app startup time and reduce cold-launch latency?
- What strategies exist for sharing code between MAUI and a web/API project in the same solution?
- What is Avalonia UI, and what makes it a viable cross-platform desktop alternative to WPF?
- How does Avalonia's rendering pipeline differ from WPF and WinUI 3?
- What is the Avalonia MVVM toolkit, and how does it integrate with ReactiveUI or CommunityToolkit.Mvvm?
- How does Avalonia handle theming and styling compared to WPF resource dictionaries?
- How do you test Avalonia UI components in headless mode?
- What problems does MVVM solve, and when does it become over-engineering?
- How do you integrate Win32/native APIs into modern .NET desktop apps?
- How does the CommunityToolkit.Mvvm library simplify MVVM implementation in modern desktop apps?
- What is the difference between RelayCommand and AsyncRelayCommand in CommunityToolkit.Mvvm?
- How do you implement navigation as a service in MVVM desktop applications?
- How do you handle dialog and overlay coordination in MVVM without code-behind?
- What are source generators in CommunityToolkit.Mvvm and what boilerplate do they eliminate?
- How do you manage application state across views in a desktop MVVM application?
- How do you manage multi-window applications in WinUI 3 or WPF, and how do you handle DPI awareness across monitors?
- How do you diagnose and fix UI performance issues in WPF/WinUI?
- How do you virtualize large lists and data grids in modern desktop frameworks?
- What is composition-based rendering, and how does it improve animation performance in WinUI 3?
- How do you profile and diagnose UI thread jank in desktop applications?
- What is ahead-of-time (AOT) compilation, and how does it affect desktop app startup and size?
- How do you design a desktop app that works offline and syncs later?
- How do you use SQLite with EF Core in a desktop application for local-first data storage?
- How do you integrate REST or gRPC service calls into a desktop app without blocking the UI thread?
- How do you handle secure credential storage in desktop applications across platforms?
- How do you implement background sync between local storage and a remote API in a desktop app?
- What are the options for auto-updating a desktop application, and how do you implement them in .NET?
- How does MSIX packaging affect installation, updates, and sandboxing on Windows?
- What is the difference between packaged and unpackaged WinUI 3 deployment, and what capabilities does each unlock?
- What are the real-world limitations of MSIX, and when would you avoid it?
Mobile Development

The answers to the questions below can be found in our separate article: C# Mobile Development Interview Questions and Answers
- How do native MAUI UI, BlazorWebView, HybridWebView, and WebView differ in 2026?
- How do you migrate a Xamarin.Forms app to .NET MAUI?
- How do .NET MAUI handlers differ from Xamarin.Forms renderers?
- How do you customize MAUI controls with handler mappers?
- How do you structure MVVM with CommunityToolkit.Mvvm in MAUI?
- How should dependency injection lifetimes be used in MAUI apps?
- How do you build reusable UI with ContentView, custom controls, behaviors, triggers, and converters?
- How do MAUI app icons, splash screens, fonts, and icon fonts work in single-project apps?
- Describe the .NET MAUI mobile app lifecycle. What are the key execution states, and how do you handle backgrounding, resuming, and termination?
- How do you handle state preservation during app lifecycle events? Why is relying on the Window instance persistence unreliable?
- What Shell navigation and which navigation options exist?
- Compare Shell navigation vs NavigationPage in .NET MAUI. When would you choose one over the other?
- How do you pass data between pages in .NET MAUI Shell navigation?
- How do you implement push notifications in a .NET MAUI app for both Android and iOS?
- How do you implement local notifications in .NET MAUI?
- How would you implement deep linking / app links in a .NET MAUI application?
- What should you know about SafeAreaEdges, gestures, CollectionView, and CarouselView in .NET 10?
- What gesture recognizers does .NET MAUI support, and how do you handle complex touch interactions?
- How do you implement pull-to-refresh and swipe actions in .NET MAUI?
- Compare CollectionView vs. ListView in .NET MAUI. What are the key performance differences?
- How do you build responsive layouts for different mobile screen sizes in .NET MAUI?
- How do you implement MAUI Graphics for custom drawing on mobile?
- How do you implement mobile accessibility (a11y) in .NET MAUI?
- How do localization, globalization, and right-to-left layouts work in MAUI?
- How does .NET MAUI handle app permissions? What are the best practices?
- How do you access the camera and GPS in .NET MAUI?
- How do you implement biometric authentication (Face ID, Touch ID, fingerprint) in .NET MAUI?
- How do you implement background work in MAUI across Android, iOS, and Windows?
- Explain SecureStorage in .NET MAUI. How does it differ across iOS and Android?
- How do you implement an offline-first architecture in a .NET MAUI mobile app?
- How does SQLite work in .NET MAUI, and what are the file system differences between iOS and Android?
- How do you configure HttpClient and platform network handlers in MAUI?
- How do you optimize .NET MAUI mobile app startup time?
- What strategies optimize memory and battery on mobile MAUI apps?
- Why is AOT compilation required on iOS for .NET apps, and how does Native AOT work?
- Describe deploying a .NET MAUI app to the App Store and Google Play.
- What should you know about Play App Signing, upload keys, package formats, and app size optimization?
- How do you set up CI/CD for .NET MAUI mobile apps?
- How do you handle crash reporting and analytics in .NET MAUI?
- What are the key mobile testing strategies for .NET MAUI apps?
- What is BlazorWebView in .NET MAUI, and how does its architecture work?
- When should you choose Blazor Hybrid vs. native MAUI UI?
- How do you share Razor components between a Blazor Web App and a Blazor Hybrid MAUI app?
- How does JavaScript interop work in Blazor Hybrid apps, and what differs from Blazor Web?
- Explain how BlazorWebView.TryDispatchAsync works, and when you would use it.
- What are the performance considerations for Blazor Hybrid apps on mobile devices?
- What are the key limitations of Blazor Hybrid on mobile?
- How does navigation work in Blazor Hybrid compared to native MAUI navigation?
- How do you access native device features from Blazor Hybrid components?
- What are iOS Entitlements and Provisioning Profiles, and how do they work together?
- What is App Transport Security (ATS) and how do you configure it in .NET MAUI for iOS?
- What role does R8 play in .NET Android builds?
- Describe Android-specific memory management in .NET MAUI apps.
- Compare the approaches for writing platform-specific code in .NET MAUI.
- How do you create binding projects for native iOS and Android libraries in .NET MAUI?
AI

The answers to the questions below can be found in our separate article: C# AI Interview Questions and Answers
- What is an LLM?
- What is the difference between traditional ML, LLMs, and generative AI, and where does each fit in a typical .NET product?
- What are tokens and context windows, and how do they constrain cost, latency, and prompt design in production?
- How do temperature and top-p interact, and why is true determinism still hard even at temperature 0?
- What are hallucination and grounding, and how are they actually different concepts?
- What are reasoning models and SLMs, and when does each make sense over a general chat model?
- What should and should not appear in a system prompt, and how do system, developer, and user instructions interact in modern chat APIs?
- Where should prompts live and how do you version them: code, configuration, database, or a dedicated prompt store?
- What is Microsoft.Extensions.AI, what is IChatClient, and how do they enable provider-agnostic code?
- How do you configure IChatClient in ASP.NET Core DI, and how do you add middleware for retry, caching, and telemetry?
- How do you stream model responses through SSE or SignalR, and how do you handle CancellationToken correctly?
- How do you count tokens client-side in .NET for cost estimation and context-window budgeting?
- How do you manage conversation history at scale: full replay, sliding window, summary buffer, or vector recall, and what are the trade-offs?
- When would you choose Semantic Kernel, Microsoft Agent Framework, Microsoft.Extensions.AI directly, or a vendor SDK, and on what criteria?
- What is Microsoft Agent Framework, and what is the difference between agents and workflows in its model?
- When are multi-agent patterns useful in a .NET enterprise app, and when are they over-engineering?
- How do you persist agent state, implement human-in-the-loop approval, bind an agent's tool surface, and stop unsafe actions?
- How do you test and evaluate agent behavior given that runs are non-deterministic?
- What is the Model Context Protocol? What problem does it solve?
- What are the MCP primitives?
- How do you build an MCP server in C# using the official SDK?
- What are the known MCP security risks, and how do you mitigate them?
- How would you design an AI-powered feature inside ASP.NET Core?
- How do you add retry, timeout, and circuit breaker policies to AI provider calls, and what does graceful degradation look like?
- How do you architect AI features for multi-tenant SaaS so prompts, data, and vector indices are isolated per tenant?
- How do you design an input/output guardrails layer (PII redaction, jailbreak detection, output validation), and where does it sit in the request pipeline?
- What are the main techniques for reducing AI latency and cost, and how do you version prompts and models safely in production?
- What are the main security risks in LLM applications, and what is the difference between direct and indirect prompt injection?
- How do you prevent data exfiltration through an AI assistant, including the "render this image" and "follow this link" patterns?
- How do you detect and redact PII before sending content to a model, and how do you handle PII in logs, telemetry, and tool results?
- How do you secure AI-generated SQL, code, or shell commands so they never execute unchecked?
- What is red-teaming for AI features, and how do you handle user consent, data retention, and deletion (including embeddings derived from deleted source data)?
- Why is testing AI features fundamentally different from testing deterministic code? What do you mock, what uses real model calls, and how do you keep CI cost bounded?
- How do you build a golden dataset and run eval regression tests, and how do you avoid over-trusting LLM-as-judge?
- What do Azure AI Foundry Evaluations and PromptFlow add to a .NET CI pipeline, and how do you compare two models or prompt versions before migration (offline eval, shadow traffic, A/B)?
- How do you trace an AI request end-to-end with OpenTelemetry, and what metrics matter most in production?
- How do you detect cost spikes, runaway agent loops, and context-window blowups in production, and how do you audit tool calls and agent decisions for compliance?
- How do you decide between better prompts, RAG, and fine-tuning, and why is fine-tuning rarely the first answer for enterprise knowledge Q&A?
- What is the practical difference between supervised fine-tuning, RLHF, DPO, and instruction tuning, and what is model distillation?
- What is quantization, and how does it affect quality, size, and latency?
- When would you run a local LLM (Ollama, llama.cpp, ONNX Runtime GenAI) instead of a hosted API, and how does that integrate through Microsoft.Extensions.AI?
- What is the difference between autocomplete, chat, edit (multi-file), and agent modes in these tools, and when does each actually save time versus create rework?
- How do you structure a .NET repository so an AI coding agent works well in it, folder layout, naming conventions, README discoverability, and what to put at the solution root?
- What is CLAUDE.md (or .cursorrules / copilot-instructions.md), what should a .NET project put in it, and what should it avoid?
- What are Claude Code Skills and Cursor Rules, how do they differ from CLAUDE.md, and when should you create a project-specific skill?
- How do you prevent an AI coding agent from reading or committing secrets, config files, and customer data?
- How do you review AI-generated pull requests differently from human PRs, and what specific failure modes do you look for (subtle logic errors, fabricated APIs, security regressions, license issues)?
- What are the IP, licensing, and compliance considerations for AI coding tools, and how do you compare Copilot, Cursor, and Claude Code on those grounds?
Agile & Scrum

The answers to the questions below can be found in our separate article: Agile & Scrum Interview Questions and Answers
- What is Agile, and how is it different from traditional Waterfall delivery?
- What are the core values and principles of the Agile Manifesto?
- What is the difference between Agile, Scrum, Kanban, and Lean?
- What problems does Agile try to solve in software delivery?
- What are the most common misconceptions about Agile?
- What is iterative development, and why does Agile prefer short delivery cycles?
- What is incremental delivery, and how is it different from iterative delivery?
- What does "customer collaboration" mean in real Agile teams?
- What is the difference between output and outcome in Agile delivery?
- Why do some companies fail when adopting Agile?
- What is a burndown chart?
- What is a burnup chart?
- What is a cumulative flow diagram (CFD)?
- How do Agile metrics become toxic?
- What is DORA, and why does it matter?
- What are the four DORA metrics?
- How do you measure delivery predictability?
- What is Scrum, and when does Scrum work well?
- What are the Scrum roles and responsibilities?
- What is the difference between Product Owner, Project Manager, and Scrum Master?
- What makes a good Product Owner?
- What makes a good Scrum Master?
- What is a cross-functional team?
- What is a self-organizing team?
- What is the purpose of a Sprint?
- What is the recommended Scrum team size, and why?
- What is the Definition of Done (DoD)?
- What is the Definition of Ready (DoR)?
- What happens during Sprint Planning?
- What makes Sprint Planning ineffective?
- What is Daily Scrum, and what is its real purpose?
- What is a Sprint Review, and who should attend?
- What is a Sprint Retrospective, and why is it important?
- How do you run effective retrospectives?
- What anti-patterns appear in Scrum ceremonies?
- What are Story Points, and why do Agile teams use them?
- What is velocity, and why is it often misused?
- What is sprint capacity planning?
- What is the difference between estimation and commitment?
- What estimation techniques exist in Agile teams?
- Why do estimates often fail in software projects?
- What is technical debt, and how should Agile teams manage it?
- How do Agile teams balance feature work and refactoring?
- What is a Product Backlog?
- What makes a good backlog item?
- What is backlog refinement?
- What is a user story?
- What is the difference between epic, feature, story, and task?
- What is INVEST in Agile?
- What makes a good user story?
- What are acceptance criteria?
- How do Agile teams handle changing requirements?
- How do you prioritize backlog items?
- Which prioritization techniques are you choosing for which situation?
- What is Kanban, and how does it differ from Scrum?
- What is continuous delivery in Kanban?
- What are WIP limits, and why are they important?
- What is cycle time?
- What is lead time?
- What is throughput in Kanban?
- What is flow efficiency?
- What are bottlenecks, and how do you identify them?
- What metrics matter most in Kanban teams?
- What anti-patterns exist in Kanban adoption?
- What is risk management in software projects?
- What is the difference between risk, issue, blocker, and dependency?
- What are the most common risks in software projects?
- What is risk probability vs impact?
- What is a risk matrix?
- What is risk mitigation?
- What is risk acceptance?
- What is contingency planning?
- What is residual risk?
- What is risk appetite in organizations?
- How do you identify architectural risks early?
- What delivery risks appear in Agile projects?
- What risks appear during cloud migration projects?
- What risks appear in microservices adoption?
- What risks appear in AI and LLM projects?
- How do dependencies between teams create delivery risks?
- What risks appear from poor requirements quality?
- What risks appear from weak observability and monitoring?
- How do you reduce deployment risks in production systems?
- What risks appear in remote or distributed teams?
- What risks appear when scaling engineering teams?
- How does poor communication create delivery risks?
- What is bus factor risk?
- What risks appear from key-person dependency?
- What risks appear from unrealistic deadlines?
- How do organizational politics affect project risks?
- How do you communicate risks to leadership?
- What makes risk reporting ineffective?
- How do experienced architects think about risks differently from junior engineers?
- What challenges appear when scaling Agile across multiple teams?
- What is SAFe?
- What is Scrum of Scrums?
- What coordination problems appear in large Agile organizations?
- What is dependency management between Agile teams?
- What is release train planning?
- Why do enterprise Agile transformations often fail?
- What is "Agile theater"?
- How do you keep Agile lightweight in enterprise environments?
- What is the difference between being Agile and doing Agile?
- Why are CI/CD practices critical for Agile delivery?
- What is trunk-based development?
- What is feature flagging?
- Why do long-lived branches hurt Agile teams?
- What engineering anti-patterns slow Agile teams down?
- How do architecture decisions affect Agile delivery speed?