Epam Systems Interview Questions:
Explain the concepts of Java, Spring Boot, AWS, Rest APIs, and Beans.
What is the "is-a" and "has-a" relationship in Java?
How does profiling work in Spring Boot?
How do you approach Java unit testing and writing test cases?
Coding Problem: You are given an m x n integer matrix with the following properties:
Each row is sorted in non-decreasing order.
The first integer of each row is greater than the last integer of the previous row.
Given an integer target, return true if the target exists in the matrix, otherwise false. Implement a solution with O(log(m * n)) time complexity.
Example:
Input: matrix = [[11, 3, 5, 7], [10, 11, 16, 20], [23, 30, 34, 60]], target = 3
Output: true
Technical Topics:
What are the internals of Hibernate?
Explain core Java and multithreading concepts.
Discuss OOP principles (inheritance, encapsulation, polymorphism, abstraction).
Explain the Java Collection Framework in depth (e.g., HashMap, TreeSet, etc.).
What is the difference between throw and throws in Java?
How does the constructor work in Java?
What is the use of const in programming?
Solve the word-search problem from LeetCode.
Write SQL queries to find the nth highest salary and the median salary.
Interview Questions:
What are the features of MongoDB?
How do you implement encapsulation using Java Beans?
Write a singleton class in Java and ensure its thread safety.
What methods are defined in the Object class in Java?
Explain the ACID properties in databases.
How do you handle SQL query optimization?
What is the difference between stack and heap memory?
What are the differences between TreeSet and HashSet?
How do you implement a deadlock in Java?
What are the differences between Runnable and Callable in Java?
Spring Framework:
Explain Spring AOP (Aspect-Oriented Programming).
How do Spring transactions and Spring security work?
What are the different Spring Bean scopes?
How do you handle transaction propagation in Spring?
Java 8 Features and Collections:
How do you implement a comparator to sort employees by first name, and then by last name if the first names are the same?
How do you write an optimized hashCode method for objects?
Explain the significance of terminal operations in Java 8 Streams API.
What are lambda expressions, and how can they be used to reduce code?
What are the differences between ConcurrentHashMap and synchronized HashMap?
Design Patterns and SOLID Principles:
Explain SOLID principles and their importance in object-oriented design.
What design patterns have you implemented in your projects? Provide examples.
How do you implement the observer design pattern?
What is the Singleton design pattern, and how do you implement it in Java?
How do you apply clean code principles like DRY, YAGNI, and KISS?
System Design and Architecture:
How would you design a system like Skype? What are the architectural challenges?
How does a microservices architecture compare to monolithic architecture?
Explain the importance of CI/CD (Continuous Integration/Continuous Deployment) in a software development lifecycle.
Java and Algorithm Questions:
Write a code to shuffle an integer array.
How do you find the shortest distance between two points?
Solve a balanced parentheses problem using a stack in Java.
Write a code to implement the Fibonacci sequence and sort it with all odd numbers first and even numbers at the end without using a temporary array.
What is a pangram problem, and how do you solve it?
General Programming and Problem-Solving:
How do you handle garbage collection in Java?
What are the differences between synchronous and asynchronous methods?
Solve the n+1 problem in SQL.
How do you solve a candy distribution problem using Java?
How would you count email domains in a list of employee objects?
Implement the observer design pattern and explain its use case.
Advanced Java and Frameworks:
What are the core differences between abstract classes and interfaces in Java 8?
What is immutability in Java, and what are its benefits?
How does Redis work in a cloud platform for caching?
How would you design a cache system in Java?
Explain the working of the JVM, heap memory, and garbage collection.
How do you implement polyfill for Array.map in JavaScript?
What are the benefits of using useMemo, useCallback, useRef in React?
Real-World Scenarios and Code Reviews:
How do you ensure clean code and conduct code reviews?
What is your approach to implementing Agile methodology in a project?
How do you deploy applications in an Agile environment?
How do you write integration tests and unit tests in Java?
What tools do you use for code coverage and testing in your development process?