Deutsche Bank - AVP Java Developer Interview
Questionnaire
Java (Core & Java 17 Features)
1 Explain the use of records in Java 17. How are they different from normal classes?
2 What are sealed classes and when would you use them?
3 How does pattern matching for instanceof improve readability?
4 Explain switch expressions with an example.
5 What are text blocks and how do they help with multi-line strings?
6 How does Java handle memory management and garbage collection?
7 Explain the difference between parallel streams and CompletableFuture.
8 What are common pitfalls in multithreading in Java?
Spring Boot & Microservices
1 Explain how auto-configuration works in Spring Boot.
2 What are profiles in Spring Boot and why are they used?
3 How do you secure REST APIs using JWT or OAuth2 in Spring Boot?
4 Explain circuit breaker and retries in microservices.
5 How would you manage configuration across multiple environments?
6 What is the difference between @Component, @Service, and @Repository?
7 How do you ensure backward compatibility when versioning APIs?
Databases (Oracle)
1 Explain the difference between INNER JOIN, LEFT JOIN, and EXISTS.
2 How do you analyze and improve a slow SQL query?
3 What are indexes and when should they be avoided?
4 Explain the difference between optimistic and pessimistic locking.
5 What are different transaction isolation levels?
6 How do you perform batch operations efficiently in Oracle?
Messaging (Kafka)
1 Explain how Kafka ensures fault tolerance and durability.
2 What are partitions and consumer groups in Kafka?
3 How do you achieve message ordering in Kafka?
4 Explain exactly-once semantics in Kafka.
5 What are common challenges when handling retries in Kafka consumers?
Caching (Redis)
1 What are common cache eviction policies in Redis?
2 How do you handle cache consistency with the database?
3 Explain cache stampede and how to prevent it.
4 What are distributed locks in Redis and when would you use them?
DevOps / Deployment
1 Explain how Jenkins pipelines are structured.
2 How would you implement CI/CD for a microservices project?
3 What is OpenShift and how does it differ from Kubernetes?
4 How do you scale applications in OpenShift?
5 Explain how Docker images are built and optimized.
Testing (JUnit, Mockito)
1 What is the difference between unit testing and integration testing?
2 How do you mock external services in microservices tests?
3 Explain the use of Testcontainers in integration testing.
4 How do you test exception handling using Mockito?
System Design & Leadership
1 Design a payment processing system with microservices, Kafka, and Redis.
2 How would you ensure fault tolerance in a distributed system?
3 Explain eventual consistency vs ACID transactions.
4 How do you design APIs for scalability and maintainability?
5 As an AVP, how would you mentor junior developers on coding best practices?
6 How do you make technology trade-offs in architecture decisions?