| 1 | How do you implement service-to-service authentication in a Node.js microservices architecture, so internal services can trust requests from each other? Node.js › Microservices Architecture with Node.js | Node.js | Microservices Architecture with Node.js | Intermediate |
| 2 | How would you handle service discovery in a Node.js microservices architecture, so services can find each other's network locations dynamically? Node.js › Microservices Architecture with Node.js | Node.js | Microservices Architecture with Node.js | Advanced |
| 3 | What are the key benefits and tradeoffs of splitting a Node.js monolith into microservices? Node.js › Microservices Architecture with Node.js | Node.js | Microservices Architecture with Node.js | Intermediate |
| 4 | What is an API Gateway, and what role does it play in front of a collection of Node.js microservices? Node.js › Microservices Architecture with Node.js | Node.js | Microservices Architecture with Node.js | Intermediate |
| 5 | How does distributed data ownership work in microservices -- specifically, why shouldn't multiple services share direct access to the same database? Node.js › Microservices Architecture with Node.js | Node.js | Microservices Architecture with Node.js | Advanced |
| 6 | What is the Saga pattern, and how does it manage distributed transactions across multiple Node.js microservices? Node.js › Architecture & Design Patterns | Node.js | Architecture & Design Patterns | Advanced |
| 7 | When would you choose a message queue/broker (RabbitMQ or Kafka) over simply making direct HTTP calls between Node.js microservices? Node.js › Message Queues (RabbitMQ & Kafka) | Node.js | Message Queues (RabbitMQ & Kafka) | Intermediate |
| 8 | How would you implement distributed tracing across multiple Node.js microservices using OpenTelemetry? Node.js › Logging & Monitoring | Node.js | Logging & Monitoring | Advanced |
| 9 | How would you publish and consume messages using RabbitMQ in a Node.js application via the amqplib package? Node.js › Message Queues (RabbitMQ & Kafka) | Node.js | Message Queues (RabbitMQ & Kafka) | Intermediate |
| 10 | How would you implement GraphQL schema stitching or federation to compose a single unified GraphQL API from multiple underlying microservices? Node.js › GraphQL | Node.js | GraphQL | Advanced |
| 11 | How would you implement HTTP/2 or HTTP/1.1 connection pooling on the client side in Node.js when making many outgoing requests to the same downstream API? Node.js › HTTP & Web Servers | Node.js | HTTP & Web Servers | Advanced |
| 12 | How does Kafka's architecture (topics, partitions, consumer groups) differ fundamentally from RabbitMQ's queue-based model? Node.js › Message Queues (RabbitMQ & Kafka) | Node.js | Message Queues (RabbitMQ & Kafka) | Advanced |
| 13 | How do you validate a JWT's claims (issuer, audience, expiration) beyond just verifying its cryptographic signature? Node.js › Authentication & Authorization (JWT, OAuth, Passport) | Node.js | Authentication & Authorization (JWT, OAuth, Passport) | Intermediate |
| 14 | What is HTTP keep-alive, and how does Node's http.Agent manage connection reuse for outgoing requests? Node.js › HTTP & HTTPS Modules | Node.js | HTTP & HTTPS Modules | Intermediate |
| 15 | How would you implement request correlation IDs to trace a single request's logs across multiple log lines and services? Node.js › Logging & Monitoring | Node.js | Logging & Monitoring | Intermediate |
| 16 | What is the difference between a message queue (like RabbitMQ) and a job queue (like BullMQ), and when would you choose one over the other? Node.js › Background Jobs & Queues | Node.js | Background Jobs & Queues | Advanced |
| 17 | How would you implement a middleware that adds a correlation/request ID to every incoming request for tracing purposes across a distributed system? Node.js › Express & Middleware | Node.js | Express & Middleware | Advanced |