𝗝𝗮𝘃𝗮 𝗕𝗮𝗰𝗸𝗲𝗻𝗱 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿 – 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗘𝘅𝗽𝗲𝗿𝗶𝗲𝗻𝗰𝗲 I recently appeared for a Java Backend Developer interview and wanted to share some of the challenging questions that were asked. Sharing this here in case it helps others preparing for Java / Spring Boot backend roles. 𝗖𝗼𝗿𝗲 𝗝𝗮𝘃𝗮 (𝗗𝗲𝗲𝗽 𝗖𝗼𝗻𝗰𝗲𝗽𝘁𝘀) • What happens internally in HashMap when two keys generate the same hash? • How does ConcurrentHashMap achieve thread safety? • Difference between Synchronized Collections and Concurrent Collections. • What is the volatile keyword and how is it different from synchronization? • Explain the Java Memory Model (JMM). • Difference between Future and CompletableFuture. • What are Parallel Streams and when should they not be used? • What is a ClassLoader in Java and what are the different types? 𝗦𝗽𝗿𝗶𝗻𝗴 𝗕𝗼𝗼𝘁 / 𝗠𝗶𝗰𝗿𝗼𝘀𝗲𝗿𝘃𝗶𝗰𝗲𝘀 • How does Spring Boot Auto Configuration work internally? • Difference between @ComponentScan and @SpringBootApplication. • Explain the Spring Bean Lifecycle. • What are Circular Dependencies in Spring and how can they be resolved? • Difference between @ControllerAdvice and @RestControllerAdvice. • How would you implement Rate Limiting in a Spring Boot API? 𝗗𝗮𝘁𝗮𝗯𝗮𝘀𝗲 / 𝗣𝗲𝗿𝗳𝗼𝗿𝗺𝗮𝗻𝗰𝗲 • What is the N+1 Query Problem in JPA and how can it be solved? • Difference between LAZY Fetching and EAGER Fetching. • When should you use database indexing and when should you avoid it? • How would you debug a slow SQL query in production? 𝗦𝘆𝘀𝘁𝗲𝗺 𝗗𝗲𝘀𝗶𝗴𝗻 𝗦𝗰𝗲𝗻𝗮𝗿𝗶𝗼 Design a system that can send millions of emails per day. Discussion included: • Message Queues (Kafka / RabbitMQ) • Retry Mechanisms • Dead Letter Queues (DLQ) • Horizontal Scaling • Logging and Monitoring 𝗣𝗿𝗮𝗰𝘁𝗶𝗰𝗮𝗹 𝗦𝗰𝗲𝗻𝗮𝗿𝗶𝗼 If multiple users update the same database record simultaneously, how would you prevent data inconsistency? Discussion points: • Optimistic Locking • Pessimistic Locking • Transaction Isolation Levels Hope this helps someone preparing for Java Backend interviews. #Java #SpringBoot #BackendDevelopment #InterviewExperience #SoftwareEngineering #JavaDeveloper #immediate_joiner #ReactJs #MicroServices
Insightful
We’re Hiring – Multiple Opportunities with Citigroup Total No of roles :30 Location: Hybrid at Mississauga (2-3 days)
Happy to connect with recruiters and engineering teams looking for a Java / Spring Boot developer. ✔ Immediate Joiner ✔ 4+ Years Experience in Java, Spring Boot, REST APIs, React ✔ Passionate about clean code, scalable backend systems, and problem solving Feel free to connect or reach out. Always open to new opportunities! 🚀