Service Discovery and Configuration Management Questions

Letting services find and configure each other at runtime: service registries, client-side versus server-side discovery, DNS-based discovery, dynamic configuration, feature flags, and secrets distribution. Covers how services stay wired together as instances come and go, how config changes propagate safely, and how to monitor and diagnose the outages that stale endpoints or bad config pushes cause. The connective plumbing of a microservices deployment.

EasyTechnical
52 practiced

Explain how Kubernetes service discovery works for ClusterIP and headless services. Given YAML expressed inline as apiVersion: v1; kind: Service; metadata.name: backend; spec.clusterIP: None; selector.app: backend, describe how DNS records are created, how clients discover endpoints (A vs SRV), and when to use headless services vs ClusterIP.

HardSystem Design
63 practiced

Design a dynamic configuration service that supports versioned configurations, atomic rollouts, and quick rollback. Requirements: services can query a specific version or subscribe to change notifications, audit history is preserved, and rollbacks across many instances complete within minutes. Sketch the APIs, storage approach, and how you'd coordinate rollout and rollback safely.

HardTechnical
52 practiced

Describe a schema evolution strategy for configuration data and feature flags that ensures backward and forward compatibility across microservices written in different languages. Include approaches for typed versus untyped configs, deprecation policies, defaulting strategies, validation tooling, and how to handle clients that cannot be upgraded simultaneously.

HardTechnical
60 practiced

Describe strategies to test and debug behavior driven by externalized configuration: missing keys, incorrect types, live reload, secrets rotation, and mixed-version deployments. Include automated tests, canary rollout strategies, safe defaults, and how to handle secrets securely in CI while enabling meaningful tests.

MediumTechnical
58 practiced

Implement in Python a thread-safe ServiceResolver class that resolves a service name to IP addresses using socket.getaddrinfo and caches results per-service with a configurable TTL. Provide methods: resolve(service_name) -> list of IPs, and invalidate(service_name). The cache should refresh after TTL expiry and avoid duplicate simultaneous DNS queries when multiple threads request the same service concurrently.

Unlock Full Question Bank

Get access to all 15 Service Discovery and Configuration Management interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.