i
Bajaj Finserv
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Naukri.com and was interviewed in Nov 2023. There were 2 interview rounds.
Use a HashSet to track duplicate elements in linear time complexity.
Create a HashSet to store unique elements.
Iterate through the array and check if the element is already in the HashSet. If it is, then it is a duplicate.
Add the duplicate elements to a separate list or array.
Coroutines are a way to perform asynchronous operations in a sequential manner in Kotlin.
Coroutines are lightweight threads that can be used for asynchronous programming.
They allow for sequential code execution with suspend functions.
Coroutines can be used for tasks like network calls, database operations, and UI updates.
They are part of Kotlin's standard library and are supported in Android development.
Top trending discussions
I was interviewed before Mar 2016.
posted on 10 May 2015
Multi tasking, multi processing, and multi programming are different approaches to managing tasks in an operating system.
Multi tasking allows multiple tasks to run concurrently on a single processor.
Multi processing involves multiple processors running tasks simultaneously.
Multi programming allows multiple programs to be loaded into memory and executed concurrently.
Examples of multi tasking operating systems include Wi...
Memory allocation refers to the process of assigning memory to programs during runtime.
Stack allocation is done automatically and is limited in size.
Heap allocation is done manually and is larger in size.
Stack memory is used for local variables and function calls.
Heap memory is used for dynamic memory allocation.
Memory leaks can occur if heap memory is not properly managed.
Use a shared variable and synchronization mechanisms to ensure natural order printing of numbers.
Create two threads, one for printing even numbers and the other for printing odd numbers.
Use a shared variable to keep track of the current number to be printed.
Implement synchronization mechanisms like locks or semaphores to ensure only one thread can access the shared variable at a time.
Each thread should check if it is i...
Printing a matrix in spiral order
Start from the first element and print it
Move in a spiral order towards the center of the matrix
Repeat until all elements are printed
Thread class and Runnable Interface are used for multithreading in Java.
Thread class is a predefined class in Java that provides methods to create and control threads.
Runnable interface is used to define a task that can be executed by a thread.
Thread class implements Runnable interface.
Thread class provides more control over threads than Runnable interface.
Example: Thread t = new Thread(new MyRunnable()); t.start();
Exa...
Linked List is a dynamic data structure while ArrayList is a static data structure.
Linked List is best for frequent insertion and deletion operations.
ArrayList is best for frequent access operations.
Linked List uses more memory than ArrayList.
ArrayList is faster than Linked List for accessing elements.
Use Linked List when you need to frequently add or remove elements from the list.
Use ArrayList when you need to frequen
I am not interested in a career in investment banking.
I am more interested in a career in software development
I enjoy problem-solving and creating innovative solutions through coding
Investment banking does not align with my passion and skill set
I have chosen to apply to J.P. Morgan because of their reputation, global presence, and opportunities for growth.
J.P. Morgan has a strong reputation in the financial industry.
They have a global presence with offices in multiple countries.
The company offers various opportunities for career growth and development.
J.P. Morgan is known for its innovative technology solutions in the financial sector.
I am impressed by their ...
Yes, I have made a mistake in my previous project.
I underestimated the complexity of a task and ended up missing the deadline.
I failed to properly test a feature, resulting in a bug that affected user experience.
I accidentally deleted an important file without having a backup.
I misunderstood a requirement and implemented a feature incorrectly.
posted on 19 Apr 2020
I applied via Company Website and was interviewed in Oct 2019. There were 4 interview rounds.
posted on 5 Jul 2021
posted on 31 Oct 2022
I applied via Company Website and was interviewed before Oct 2021. There were 2 interview rounds.
I have followed the MVC, Singleton, and Factory design patterns in my past projects.
MVC pattern for separating concerns and improving maintainability
Singleton pattern for ensuring only one instance of a class is created
Factory pattern for creating objects without exposing the instantiation logic
Applications can be secured by implementing various security measures such as authentication, authorization, encryption, and regular updates.
Implement strong authentication mechanisms such as multi-factor authentication
Use authorization to restrict access to sensitive data and functionalities
Encrypt sensitive data both in transit and at rest
Regularly update the application and its dependencies to patch security vulnera...
I applied via Recruitment Consulltant and was interviewed in Mar 2024. There were 3 interview rounds.
Polymorphism is the ability of a function or method to behave differently based on the object it is acting upon.
Polymorphism allows objects of different classes to be treated as objects of a common superclass.
There are two types of polymorphism: compile-time (method overloading) and runtime (method overriding).
Example: Inheritance in object-oriented programming languages like Java allows for polymorphism.
RestController is a class in Spring framework used to handle HTTP requests and return responses as JSON or XML.
Handles HTTP requests in Spring framework
Returns responses as JSON or XML
Annotate a class with @RestController to define it as a RestController
Example: @RestController public class UserController {}
Find the number of occurrences of each element in the given ArrayList
posted on 11 Mar 2022
I was interviewed in Aug 2021.
Round duration - 65 Minutes
Round difficulty - Medium
This was an online proctured coding test where we had 2 questions to solve under 65 minutes. Both the questions were of difficulty Medium to Hard.
Given an integer array, your objective is to change all elements to the same value, minimizing the cost. The cost of changing an element from x
to y
is defined ...
Find the minimum cost to make all elements of an array equal by changing them to a common value.
Calculate the median of the array and find the sum of absolute differences between each element and the median.
Sort the array and find the median element, then calculate the sum of absolute differences between each element and the median.
If the array has an even number of elements, consider the average of the two middle elem
Given a pattern as a string and a set of words, determine if the pattern and the words list align in the same sequence.
T (number of test cases)
For each test ca...
Given a pattern and a list of words, determine if the words align with the pattern.
Create a mapping between characters in the pattern and words in the list.
Check if the mapping preserves the order of characters in the pattern.
Return 'True' if the sequence of words matches the order of characters in the pattern, else return 'False'.
Round duration - 50 Minutes
Round difficulty - Medium
This round had 2 algorithmic questions in which I first had to explain my approach with proper complexity analysis and then code the solution in any preferred IDE.
You are given an integer array 'ARR' of size 'N' and an integer 'S'. Your task is to find and return a list of all pairs of elements where each sum of a pair equals 'S'.
Find pairs of elements in an array that sum up to a given value, sorted in a specific order.
Iterate through the array and for each element, check if the complement (S - current element) exists in a hash set.
If the complement exists, add the pair to the result list.
Sort the result list based on the criteria mentioned in the question.
Return the sorted list of pairs.
Given a specified number of intervals, where each interval is represented by two integers denoting its boundaries, the task is to merge all overlapping interv...
Merge overlapping intervals and return sorted list of merged intervals.
Iterate through intervals and merge overlapping ones
Sort merged intervals based on starting times
Handle edge cases like empty input or single interval
Example: Input - [[1,4], [3,5], [6,8], [10,12], [8,9]], Output - [[1,5], [6,9], [10,12]]
Round duration - 60 Minutes
Round difficulty - Medium
This round had 1 standard coding question followed by some questions from OS and at last I was also asked some questions related to Statistics and Probability.
You are given a N x M
matrix of integers. Your task is to return the spiral path of the matrix elements.
The first line contains an integer 'T' which denotes the nu...
The task is to return the spiral path of elements in a given matrix.
Iterate through the matrix in a spiral path by adjusting the boundaries at each step.
Keep track of the direction of traversal (right, down, left, up) to cover all elements.
Handle edge cases such as when the matrix is a single row or column.
Implement the spiral path traversal algorithm efficiently to meet the time limit.
Ensure to print the elements in t
Use multiple threads to print numbers from 1 to 100 in an optimized approach.
Divide the range of numbers (1-100) among the threads to avoid overlap.
Use synchronization mechanisms like mutex or semaphore to ensure orderly printing.
Consider using a shared variable to keep track of the current number being printed.
Multitasking refers to the ability of an operating system to run multiple tasks concurrently, while multithreading involves executing multiple threads within a single process.
Multitasking allows multiple processes to run simultaneously on a single processor, switching between them quickly.
Multithreading enables a single process to execute multiple threads concurrently, sharing resources like memory and CPU time.
Multita...
Round duration - 30 Minutes
Round difficulty - Easy
This is a cultural fitment testing round .HR was very frank and asked standard questions. Then we discussed about my role.
Tip 1 : Must do Previously asked Interview as well as Online Test Questions.
Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.
Tip 3 : Do at-least 2 good projects and you must know every bit of them.
Tip 1 : Have at-least 2 good projects explained in short with all important points covered.
Tip 2 : Every skill must be mentioned.
Tip 3 : Focus on skills, projects and experiences more.
posted on 4 Mar 2024
I applied via Referral and was interviewed in Sep 2023. There were 3 interview rounds.
Simple to intermediate coding questions
posted on 14 Feb 2024
I applied via Naukri.com and was interviewed in Jan 2024. There were 2 interview rounds.
Heap memory can be monitored using tools like profilers. Objects are removed from heap memory through garbage collection.
Use profilers like VisualVM or Java Mission Control to monitor heap memory usage
Analyze heap dumps to identify memory leaks and optimize memory usage
Garbage collection automatically removes unreferenced objects from heap memory
Different garbage collection algorithms like Mark and Sweep, Copying, and ...
Handling an application running on different instances involves load balancing, monitoring, and synchronization.
Implement load balancing to distribute the workload evenly across instances.
Monitor the performance and health of each instance to ensure optimal operation.
Use synchronization techniques to maintain consistency and avoid conflicts between instances.
Implement failover mechanisms to handle instances going offli...
Yes, a load balancer can handle multiple addition of new instances or pods.
A load balancer distributes incoming traffic across multiple instances or pods.
To handle multiple additions, the load balancer should be able to dynamically update its routing configuration.
Load balancers can use various algorithms to distribute traffic, such as round-robin, least connections, or weighted distribution.
Load balancers can also per...
Caching improves application performance by storing frequently accessed data in memory.
Identify the data that needs to be cached
Choose a caching strategy (e.g., in-memory cache, distributed cache)
Implement caching logic in the application code
Set appropriate cache expiration policies
Handle cache invalidation when data changes
Yes, a distributed system can handle 1M requests per second by using load balancing, horizontal scaling, and caching.
Implement load balancing to distribute incoming requests across multiple servers.
Use horizontal scaling by adding more servers to handle the increased load.
Implement caching to store frequently accessed data and reduce the load on the backend.
Optimize the system by using efficient algorithms and data str...
based on 1 interview
Interview experience
based on 1 review
Rating in categories
Assistant Manager
1.3k
salaries
| ₹0 L/yr - ₹0 L/yr |
Sales Officer
1.2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Sales Executive
1.2k
salaries
| ₹0 L/yr - ₹0 L/yr |
Sales Manager
1k
salaries
| ₹0 L/yr - ₹0 L/yr |
Manager
866
salaries
| ₹0 L/yr - ₹0 L/yr |
HDFC Bank
ICICI Bank
Axis Bank
State Bank of India