Filter interviews by
I applied via LinkedIn and was interviewed in Jun 2024. There were 5 interview rounds.
1 hour - NodeJS Based
High level system design involves creating an overall architecture for a software system.
Identify the main components of the system
Define the interactions between the components
Consider scalability, reliability, and performance
Use diagrams to visualize the design
Example: Designing a social media platform with user profiles, posts, and messaging functionality
Low level system design involves designing the internal components of a software system.
Focus on the architecture of the system at a detailed level
Consider how different components interact with each other
Optimize for performance and efficiency
Think about scalability and maintainability
Examples: designing a database schema, creating algorithms for data processing
I applied via Naukri.com and was interviewed in Jan 2024. There were 2 interview rounds.
Write a program to find the missing number among 1-100 integers in an array.
Iaac (Infrastructure as Code) offers numerous benefits in terms of scalability, efficiency, and consistency.
Scalability: Iaac allows for easily scaling infrastructure resources up or down based on demand.
Efficiency: By automating the provisioning and management of infrastructure, Iaac reduces manual effort and speeds up deployment processes.
Consistency: Iaac ensures that infrastructure configurations are consistent acr...
CI and CD have different components that enable continuous integration and continuous delivery of software.
CI (Continuous Integration) components include version control system, build server, and automated testing tools.
CD (Continuous Delivery) components include deployment automation, release management, and monitoring tools.
Examples of CI components are Git, Jenkins, and JUnit.
Examples of CD components are Docker, Ku
Various checks are performed on artifacts to ensure their quality and reliability.
Visual inspection for any physical defects or abnormalities
Functional testing to verify proper operation
Performance testing to assess speed, efficiency, and accuracy
Compatibility testing to ensure compatibility with other systems or components
Security testing to identify vulnerabilities and ensure data protection
Usability testing to evalu...
I applied via LinkedIn and was interviewed in Aug 2024. There was 1 interview round.
A time series based problem statement given.
Asked to solve 3 small problem of logical thinking in programming language of chice
Bazaarvoice interview questions for popular designations
I applied via Referral and was interviewed before Sep 2023. There was 1 interview round.
Java coding - median number
Top trending discussions
I applied via Campus Placement and was interviewed before May 2020. There were 5 interview rounds.
I applied via Naukri.com and was interviewed in Jun 2020. There were 4 interview rounds.
I applied via Campus Placement and was interviewed before Jun 2021. There were 2 interview rounds.
Current affairs - relevant things going on in the world especially financial/Fintech domain
To check if a directed graph is cyclic or not
Use Depth First Search (DFS) algorithm to traverse the graph
Maintain a visited set to keep track of visited nodes
Maintain a recursion stack to keep track of nodes in the current DFS traversal
If a node is visited and is already in the recursion stack, then the graph is cyclic
If DFS traversal completes without finding a cycle, then the graph is acyclic
Return a random byte from a stream of bytes with equal probability.
Create a variable to store the count of bytes read
Create a variable to store the current random byte
For each byte read, generate a random number between 0 and the count of bytes read
If the random number is 0, store the current byte as the random byte
Return the random byte
Check if a binary tree is a binary search tree or not.
Traverse the tree in-order and check if the values are in ascending order.
For each node, check if its value is greater than the maximum value of its left subtree and less than the minimum value of its right subtree.
Use recursion to check if all nodes in the tree satisfy the above condition.
Algorithm to find Nth-to-Last element in a singly linked list of unknown length
Traverse the list and maintain two pointers, one at the beginning and one at Nth node from beginning
Move both pointers simultaneously until the second pointer reaches the end of the list
The first pointer will be pointing to the Nth-to-Last element
If N=0, return the last element
Parse the list only once
Print all possible permutations of an array of integers
Use recursion to swap elements and generate permutations
Start with the first element and swap it with each subsequent element
Repeat the process for the remaining elements
Stop when all elements have been swapped with the first element
Print each permutation as it is generated
Design a stack that prints the minimum element pushed in O(1)
Use two stacks, one for storing elements and another for storing minimums
When pushing an element, compare it with the top of minimum stack and push the smaller one
When popping an element, pop from both stacks
To get the minimum element, just return the top of minimum stack
To find the starting point of a loop in a linked list, use Floyd's cycle-finding algorithm.
Use two pointers, one moving at twice the speed of the other.
When they meet, move one pointer to the head of the list and keep the other at the meeting point.
Move both pointers one step at a time until they meet again, which is the starting point of the loop.
To find a number in a matrix where all rows and columns are sorted non-decreasingly. Complexity of the solution.
Use binary search to find the number in each row and column
Start from the top-right corner or bottom-left corner to optimize search
Time complexity: O(m log n) or O(n log m) depending on the starting corner
I appeared for an interview before Apr 2021.
Round duration - 90 minutes
Round difficulty - Easy
It was on online objective test consisting of 4 sections: Aptitude, Technical MCQs, Code snippet based MCQs and Coding part.
Given a string 'STR' consisting solely of the characters “{”, “}”, “(”, “)”, “[” and “]”, determine if the parentheses are balanced.
The first line contains an...
The task is to determine if a given string of parentheses is balanced or not.
Iterate through the characters of the string and use a stack to keep track of opening parentheses.
When encountering an opening parenthesis, push it onto the stack. When encountering a closing parenthesis, check if it matches the top of the stack.
If the stack is empty at the end or there are unmatched parentheses, the string is not balanced.
Exa...
Determine if a given singly linked list of integers is a palindrome. Return true
if it is a palindrome, otherwise return false
.
1 -> 2 -> ...
Check if a given singly linked list of integers is a palindrome.
Use two pointers to find the middle of the linked list.
Reverse the second half of the linked list.
Compare the first half with the reversed second half to determine if it is a palindrome.
Round duration - 60 minutes
Round difficulty - Easy
This was a technical and managerial round. The interviewer gave me a situation where I am in testing team and I found that customer requirement was drop down list at a place but developer has used bullet selection, and is not ready to change it. How will you manage? I gave some good replies and he was convinced.
A virtual function is a function in a base class that is declared using the keyword 'virtual' and can be overridden by a function with the same signature in a derived class.
Virtual functions allow for dynamic polymorphism in object-oriented programming.
They are used to achieve runtime polymorphism by enabling late binding.
Virtual functions are declared in a base class and can be overridden in derived classes.
Example: v...
Level order traversal of a binary tree in spiral form involves alternating between left and right while traversing each level.
Start by pushing the root node into a queue.
While the queue is not empty, pop a node, print its value, and push its children into the queue.
For each level, alternate between popping nodes from the queue and printing their values from left to right or right to left.
Continue this process until all
Abstract classes in C++ are classes that cannot be instantiated and are designed to be base classes for other classes.
Abstract classes may contain pure virtual functions, making them incomplete and unable to be instantiated.
Derived classes must implement all pure virtual functions from the abstract class in order to be concrete classes.
Abstract classes can have non-virtual functions and member variables like regular cl...
Round duration - 60 minutes
Round difficulty - Easy
This was also a technical round. He asked to optimize the code I wrote in coding round. Then he asked me a few puzzles and questions on OOPS, OS and DBMS.
ACID properties are a set of properties that guarantee the reliability of transactions in database management systems.
ACID stands for Atomicity, Consistency, Isolation, and Durability.
Atomicity ensures that either all operations in a transaction are completed successfully or none of them are.
Consistency ensures that the database remains in a consistent state before and after the transaction.
Isolation ensures that the e...
Paging and segmentation are memory management techniques in operating systems.
Paging divides physical memory into fixed-size blocks called pages, while segmentation divides logical memory into variable-size segments.
Paging allows for efficient memory allocation and management, while segmentation provides protection and sharing of memory.
Paging is simpler to implement but can lead to internal fragmentation, while segmen...
Concurrency control is a technique used in databases to manage simultaneous access and modification of data by multiple users or processes.
Concurrency control ensures that transactions are executed in a way that maintains data consistency and integrity.
Techniques like locking, timestamp ordering, and optimistic concurrency control are used to implement concurrency control.
For example, in a banking system, concurrency c...
String Buffer is synchronized and thread-safe, while String Builder is not synchronized and faster.
String Buffer is synchronized, making it thread-safe for use in multi-threaded environments.
String Builder is not synchronized, resulting in faster performance but not thread-safe.
String Builder is preferred for single-threaded operations, while String Buffer is preferred for multi-threaded operations.
Smart pointers in C++ are objects that act like pointers but provide automatic memory management.
Smart pointers help prevent memory leaks by automatically managing memory allocation and deallocation.
Examples include unique_ptr, shared_ptr, and weak_ptr.
unique_ptr is used for exclusive ownership, shared_ptr for shared ownership, and weak_ptr to prevent circular references.
Mutex is used for exclusive access to a resource, while semaphore is used for controlling access to a resource by multiple threads.
Mutex is binary and allows only one thread to access the resource at a time.
Semaphore can have a count greater than one, allowing multiple threads to access the resource simultaneously.
Mutex is typically used for protecting critical sections of code, while semaphore is used for synchronizat...
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.
based on 8 interviews
Interview experience
based on 11 reviews
Rating in categories
8-13 Yrs
Not Disclosed
Senior Software Engineer
11
salaries
| ₹22 L/yr - ₹37.3 L/yr |
Software Engineer
10
salaries
| ₹10.8 L/yr - ₹20 L/yr |
Associate Software Engineer
9
salaries
| ₹8 L/yr - ₹10.8 L/yr |
Senior Product Manager
8
salaries
| ₹25 L/yr - ₹36 L/yr |
Scrum Master
8
salaries
| ₹9 L/yr - ₹28 L/yr |
Yodlee
Fingent
Bravura Solutions
TEOCO Software