i
Xebia
Work with us
Filter interviews by
Profiles in Spring Boot allow you to define different configurations for different environments.
Profiles are used to customize application behavior based on the environment it is running in.
You can define profiles in application.properties or application.yml using 'spring.profiles.active' property.
Common profiles include 'dev', 'test', and 'prod' for development, testing, and production environments.
You can have d...
Eviction policy in cache determines which items should be removed when the cache reaches its maximum capacity.
Eviction policy helps in managing the cache size and ensuring that the most relevant data is retained.
Common eviction policies include LRU (Least Recently Used), LFU (Least Frequently Used), and FIFO (First In, First Out).
For example, in LRU policy, the least recently accessed items are removed from the ca...
Factory pattern is a creational design pattern that provides an interface for creating objects in a superclass, but allows subclasses to alter the type of objects that will be created.
Create an interface or abstract class for the factory with a method to create objects
Create concrete classes that implement the factory interface and return specific types of objects
Client code uses the factory to create objects with...
Java 8 introduced several new features including lambda expressions, functional interfaces, streams, and default methods.
Lambda expressions: Enable functional programming in Java by expressing instances of single-method interfaces (functional interfaces) concisely.
Functional interfaces: Interfaces with a single abstract method, such as java.util.function.Function or java.util.function.Predicate.
Streams: Allow for ...
LRU (Least Recently Used) is a cache eviction policy where the least recently accessed items are removed from the cache when it reaches its capacity.
LRU cache stores key-value pairs with a maximum capacity. When the cache is full, the least recently used item is evicted to make space for new items.
Each time a key is accessed in the cache, it is moved to the front of the cache to indicate it was the most recently u...
Yes, I have worked on Kafka. My code had 10 partitions.
Yes, I have experience working with Kafka and have implemented code with multiple partitions.
In one of my projects, I used Kafka with 10 partitions to distribute the workload efficiently.
Having multiple partitions in Kafka helped in achieving high throughput and scalability for real-time data processing.
I have used Redis and Memcached. Cache is needed to improve performance by storing frequently accessed data in memory.
Used Redis for key-value storage and Memcached for object caching
Cache is needed to reduce database load and improve response time
Helps in storing frequently accessed data in memory for quick retrieval
I applied via Naukri.com and was interviewed in Feb 2024. There was 1 interview round.
Java 8 introduced several new features including lambda expressions, functional interfaces, streams, and default methods.
Lambda expressions: Enable functional programming in Java by expressing instances of single-method interfaces (functional interfaces) concisely.
Functional interfaces: Interfaces with a single abstract method, such as java.util.function.Function or java.util.function.Predicate.
Streams: Allow for proce...
Eviction policy in cache determines which items should be removed when the cache reaches its maximum capacity.
Eviction policy helps in managing the cache size and ensuring that the most relevant data is retained.
Common eviction policies include LRU (Least Recently Used), LFU (Least Frequently Used), and FIFO (First In, First Out).
For example, in LRU policy, the least recently accessed items are removed from the cache w...
LRU (Least Recently Used) is a cache eviction policy where the least recently accessed items are removed from the cache when it reaches its capacity.
LRU cache stores key-value pairs with a maximum capacity. When the cache is full, the least recently used item is evicted to make space for new items.
Each time a key is accessed in the cache, it is moved to the front of the cache to indicate it was the most recently used i...
Factory pattern is a creational design pattern that provides an interface for creating objects in a superclass, but allows subclasses to alter the type of objects that will be created.
Create an interface or abstract class for the factory with a method to create objects
Create concrete classes that implement the factory interface and return specific types of objects
Client code uses the factory to create objects without k...
Profiles in Spring Boot allow you to define different configurations for different environments.
Profiles are used to customize application behavior based on the environment it is running in.
You can define profiles in application.properties or application.yml using 'spring.profiles.active' property.
Common profiles include 'dev', 'test', and 'prod' for development, testing, and production environments.
You can have differ...
I have used Redis and Memcached. Cache is needed to improve performance by storing frequently accessed data in memory.
Used Redis for key-value storage and Memcached for object caching
Cache is needed to reduce database load and improve response time
Helps in storing frequently accessed data in memory for quick retrieval
Yes, I have worked on Kafka. My code had 10 partitions.
Yes, I have experience working with Kafka and have implemented code with multiple partitions.
In one of my projects, I used Kafka with 10 partitions to distribute the workload efficiently.
Having multiple partitions in Kafka helped in achieving high throughput and scalability for real-time data processing.
Top trending discussions
posted on 11 Mar 2022
I appeared for an interview before Mar 2021.
Round duration - 60 minutes
Round difficulty - Medium
21 students were shortlisted from the 1st MCQ round and in this round we were asked to write the codes (function only) of 3 questions in 1 hour time.
You are given a grid containing oranges where each cell of the grid can contain one of the three integer values:
Find the minimum time required to rot all fresh oranges in a grid.
Use Breadth First Search (BFS) to simulate the rotting process
Track the time taken to rot all oranges and return -1 if any fresh oranges remain
Handle edge cases like no fresh oranges or all oranges already rotten
Consider using a queue to efficiently process adjacent oranges
Given an array/list 'ARR' consisting of 'N' integers, your task is to find the majority element in the array. If there is no majority element present, return -1.
Find the majority element in an array, return -1 if no majority element exists.
Iterate through the array and keep track of the count of each element using a hashmap.
Check if any element's count is greater than floor(N/2) to determine the majority element.
Return the majority element or -1 if no majority element exists.
You are provided with a non-empty binary tree in which each node contains a non-negative integer value. Your task is to find and return the maximum ...
Find the maximum path sum between two leaf nodes in a binary tree.
Traverse the tree to find the maximum path sum between two leaf nodes.
Keep track of the maximum sum found so far.
Consider all possible paths between leaf nodes.
Handle cases where the tree has only a single leaf node.
Implement a recursive function to calculate the maximum path sum.
Round duration - 60 minutes
Round difficulty - Medium
This was a technical round with DSA based questions.
You are given a Singly Linked List of integers. The task is to find the N-th node from the end of the list.
If the given list is (1 -> -2 -&g...
Find the N-th node from the end of a Singly Linked List of integers.
Traverse the list to find the length L of the list.
Calculate the position of the N-th node from the beginning as L - N + 1.
Traverse the list again to reach the calculated position and return the node's value.
You are given a binary tree consisting of distinct integers and two nodes, X
and Y
. Your task is to find and return the Lowest Common Ancestor (LCA) of these two nodes...
Find the Lowest Common Ancestor (LCA) of two nodes in a binary tree.
Traverse the binary tree to find the paths from the root to nodes X and Y.
Compare the paths to find the last common node, which is the LCA.
Handle cases where one node is an ancestor of the other or when one node is the LCA itself.
You are given a string of length N
. Your task is to reverse the string word by word. The input may contain multiple spaces between words and may have leading o...
Reverse words in a string while handling leading/trailing spaces and multiple spaces between words.
Split the input string by spaces to get individual words
Reverse the list of words
Join the reversed words with a single space in between
Handle leading/trailing spaces by stripping them before and after reversing
Round duration - 60 minutes
Round difficulty - Easy
Technical Interview round with questions based on DSA
Given 'N' subjects, each containing a certain number of problems, and 'K' friends, assign subjects to friends such that each subject goes to exactly one friend, maintain...
Assign subjects to friends to minimize maximum workload, find minimum time for most loaded friend.
Sort subjects in descending order
Assign subjects to friends one by one until all subjects are assigned
The maximum workload will be the sum of problems assigned to the friend with the most problems
Return the maximum workload as the minimum time required
Grammar in compiler design defines the syntax and structure of a programming language.
Grammar specifies the rules for forming valid statements in a programming language.
It consists of a set of production rules that define how valid programs can be constructed.
There are different types of grammars such as context-free grammar, regular grammar, etc.
Example: In C programming language, the grammar specifies that a for loop...
A token in compiler design is a basic unit of syntax that the compiler can understand and process.
Tokens are the smallest units of a program that are meaningful to the compiler.
Examples of tokens include keywords, identifiers, operators, and punctuation symbols.
Tokens are generated by the lexical analysis phase of the compiler.
Tokens are used by the parser to build the abstract syntax tree of the program.
Round duration - 60 minutes
Round difficulty - Easy
Technical round with questions on DSA and Compiler Design mainly. He told me that you’ll be having your final HR round in some time. I knew that I was going well because he seemed to be quite satisfied with my answers.
You are given an arbitrary binary tree consisting of N nodes, each associated with an integer value from 1 to 9. Each root-to-leaf path can be considered a number formed by concat...
Find the total sum of all root to leaf paths in a binary tree formed by concatenating node values.
Traverse the binary tree from root to leaf nodes, keeping track of the current path sum
Add the current path sum to the total sum when reaching a leaf node
Use modulo (10^9 + 7) to handle large outputs
A regular language is a language that can be recognized by a finite automaton.
Regular languages can be described by regular expressions.
Regular languages are closed under union, concatenation, and Kleene star operations.
Examples of regular languages include the set of all strings over an alphabet that contain an even number of 'a's.
NP problems are decision problems that can be verified in polynomial time, while NP-Hard problems are at least as hard as the hardest problems in NP.
NP problems can be verified in polynomial time but not necessarily solved in polynomial time.
NP-Hard problems are at least as hard as the hardest problems in NP, but may not be in NP themselves.
Examples of NP problems include the subset sum problem and the traveling salesm...
Round duration - 30 minutes
Round difficulty - Easy
That was the round for which I’ve been waiting for hours
She was very friendly and nice to talk to. It didn’t seem that I was talking to the HR. It was more like talking to a friend. Finally we discussed about the pay-scale and work culture in Accolite.
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.
I applied via Naukri.com and was interviewed before May 2018. There were 5 interview rounds.
I appeared for an interview in Sep 2019.
I applied via Recruitment Consultant and was interviewed before Jan 2020. There were 5 interview rounds.
I am proficient in Java, Python, and C++. I have 2 years of experience in software development. I have excellent communication skills for client interaction.
Proficient in Java, Python, and C++
2 years of software development experience
Excellent communication skills for client interaction
I applied via LinkedIn and was interviewed before Jun 2020. There were 3 interview rounds.
I applied via LinkedIn and was interviewed before Feb 2021. There were 3 interview rounds.
Basic Java programs related to string and array manipulation
posted on 15 Jul 2022
I applied via Approached by Company and was interviewed before Jul 2021. There were 2 interview rounds.
Basic programming questions
I applied via Naukri.com and was interviewed before Apr 2021. There was 1 interview round.
based on 1 interview experience
Difficulty level
Duration
based on 36 reviews
Rating in categories
Senior Consultant
730
salaries
| ₹16.6 L/yr - ₹30.9 L/yr |
Lead Consultant
447
salaries
| ₹21.4 L/yr - ₹39.6 L/yr |
Consultant
431
salaries
| ₹9.3 L/yr - ₹16.7 L/yr |
Principal Consultant
181
salaries
| ₹25 L/yr - ₹44.9 L/yr |
Senior Software Engineer
148
salaries
| ₹15.7 L/yr - ₹30 L/yr |
Xoriant
CitiusTech
HTC Global Services
Exela Technologies