Most of these questions has been answered in my eBook "Cracking the Core Java Interview" updated on June 2018, that you can buy from this link:
50 microservices interview questions for Java developers
Upasana | November 22, 2020 | 2 min read | 1,250 views | microservices-architecture
In this article we will discuss top 50 Spring Microservices interview questions for experienced Java Developers.
-
What is Spring Boot? What are advantages of using Spring Boot?
-
What are microservices?
-
What are differences between SOA and Microservices architecture?
-
Why would you opt for microservices architecture?
-
What are advantages and disadvantages of microservices?
-
What are key characteristics of Microservices?
-
What is Spring Cloud?
-
What are advantages of using Spring Cloud?
-
How will you decompose a given business functionality into microservices architecture?
-
Define Domain Driven Design?
-
What is Bounded Context?
-
What is Idempotent operation? Which methods should be made idempotent?
-
What is eventual consistency?
-
What is client side load balancing, how is it implemented in Spring Cloud?
-
How to implement server side load balancing using Spring Cloud?
-
How will you write a bare minimal spring cloud application?
Concepts
-
What is 12 factor app?
-
What is coupling and cohesion?
-
How does microservices architecture look like?
Security
-
What is OAuth2 protocol at a high level?
-
How to propagate security context from one microservice to another?
-
What is client credentials?
Testing
-
How will you test microservices? What are major challenges in microservices testing?
-
What is PACT?
-
What is CDC? Consumer Driven Contracts,
-
How to test a single component using Spring Boot WebMvcTest?
Deployment
-
How do you deploy a simple spring boot based application?
-
What is blue-green deployment pattern?
-
What is Docker? how to deploy spring boot application using docker?
Best Practices
-
Common Mistakes Made While Transitioning To Microservices
Microservices Design Patterns
Service Boundary Decomposition Patterns
-
Decompose by Domain (aka business capability)
-
Strangler Pattern
Integration Patterns
-
Service registration and discovery pattern: Netflix Eureka Service, Discovery Client, etc.
-
API Gateway pattern: Netflix Zuul API Gateway, Spring Cloud Gateway.
-
Aggregator pattern
Database Patterns
-
Database per service pattern
-
What is Saga pattern?
Logging Patterns
-
Log correlation and distributed tracing pattern: How to correlate logs when a single API call spans across multiple microservices? Anything about Zipkin and Sleuth?
-
Log aggregation: How to aggregate logs from different microservices into a centralized system for easy access. ELK (Elastic Search Logstash and Kibana), and Graylog, etc.
-
Performance metrics: How to gather performance metrics? Tracing in distributed systems.
Resiliency Patterns
-
What is Circuit Breaker Design Pattern in microservices? Talk about netflix hystrix implementation.
-
Bulk head design pattern. Hystrix implementation using netflix OSS
-
Client side load-balancing. How to achieve client side load balancing using netflix ribbon.
Development Patterns
-
Distributed configuration management
-
Asynchronous messaging: RabbitMQ, Kafka, ActiveMQ etc for asynchronous messaging in distributed systems.
-
Inter-service communication: Async and Sync communication. RestTemplate and WebClient for inter service communication. OpenFeign as a declarative REST client.
Deployment Patterns
-
Blu-Green deployment pattern
-
Using AWS Code deploy for deployment
-
Docker containerization
Top articles in this category:
- Cracking Spring Microservices Interviews - question bank
- Why Microservices are better than Monoliths
- How will you Partition a typical e-shop into Microservices Architecture
- Is it a good practice to deploy multiple microservices in a single tomcat container
- Spring Cloud and its advantages
- What is Spring Boot and what are its advantages