employer cover photo
employer logo
employer logo

Tata Consultancy Services

Fait partie de Tata Group

Employeur impliqué

Question d’entretien chez Tata Consultancy Services

What are microservices and how do you construct them?

Réponse à la question d'entretien

Utilisateur anonyme

3 juin 2026

Definition: Microservices are an architectural style where an application is split into small, independently deployable services, each owning a single business capability, its own data, and communicating over lightweight APIs (typically REST/gRPC or async messaging). Key properties: Autonomy, bounded context, independent deployability, polyglot tech stack, and fault isolation — enabling faster delivery and easier scaling compared to monoliths. Approach: Design by domain-driven design (DDD) — identify bounded contexts, model services around business capabilities, and define clear contracts (APIs) and ownership for data and behavior. Construction steps: Define service boundaries and data ownership. Design API contracts (versioned) and choose sync/async communication. Implement services with well-defined interfaces and small, focused codebases. Provide each service with its own datastore when needed to avoid coupling. Infrastructure & delivery: Automate with CI/CD pipelines, containerize services (Docker), orchestrate with Kubernetes or a managed service, and use service discovery/load balancing. Reliability & observability: Implement circuit breakers, retries, timeouts; centralize logging, distributed tracing, metrics (Prometheus/Grafana), and set up health checks and alerting. Testing & governance: Use contract testing, consumer-driven tests, end-to-end integration tests, and enforce API standards, security (authn/authz), and rollback strategies for safe evolution.