Filter interviews by
I applied via Approached by Company and was interviewed before Sep 2023. There was 1 interview round.
I applied via Company Website and was interviewed in Nov 2021. There were 4 interview rounds.
I appeared for an interview before Jan 2021.
Round duration - 120 Minutes
Round difficulty - Medium
The test included MCQ questions from SQL, Linux Commands, C/C++ programming, Logical Reasoning, Aptitude questions. The other section was the coding round, where 2 SQL queries and 2 coding questions were there.
You are provided with an array/list ARR
of length N
containing only 0s and 1s. Your goal is to determine the number of non-empty subarrays where the numbe...
Count the number of subarrays where the number of 0s is equal to the number of 1s in a given array of 0s and 1s.
Iterate through the array and keep track of the count of 0s and 1s encountered so far.
Use a hashmap to store the count of 0s and 1s encountered at each index.
For each index, check if the count of 0s is equal to the count of 1s encountered so far and update the result accordingly.
Determine if an array contains a Pythagorean triplet by checking whether there are three integers x, y, and z such that x2 + y2 = z2 within the array.
The first lin...
Detect if an array contains a Pythagorean triplet by checking if there are three integers x, y, and z such that x^2 + y^2 = z^2.
Iterate through all possible triplets of numbers in the array and check if they form a Pythagorean triplet.
Use a nested loop to generate all possible combinations of three numbers from the array.
Check if the sum of squares of two numbers is equal to the square of the third number for each trip...
Round duration - 50 Minutes
Round difficulty - Medium
This was a standard DSA round where I was asked to solve 2 questions and also code it in a production ready manner . At the end I was also asked some questions related to Linux and SQL . I was tested on some basic commands of Linux .
Given a string S
, your task is to return all distinct palindromic substrings of the given string in alphabetical order.
A string is considered a pal...
Return all distinct palindromic substrings of a given string in alphabetical order.
Iterate through all possible substrings of the given string.
Check if each substring is a palindrome.
Store distinct palindromic substrings in alphabetical order.
Given two integers a
and b
, your task is to swap these numbers and output the swapped values.
The first line contains a single integer 't', representing the num...
Swap two integers 'a' and 'b' and output the swapped values.
Create a temporary variable to store one of the integers before swapping.
Swap the values of 'a' and 'b' using the temporary variable.
Output the swapped values of 'a' and 'b'.
Normalization is the process of organizing data in a database to reduce redundancy and improve data integrity, while denormalization is the process of intentionally adding redundancy to improve query performance.
Normalization involves breaking down a table into smaller tables and defining relationships between them to reduce redundancy and dependency.
Denormalization involves combining tables or adding redundant data to...
Round duration - 60 Minutes
Round difficulty - Medium
This was a DS/Algo + Core round where I was asked questions related to DBMS , SQL queries and Linux Commands . The first question was of DSA and I was able to code it preety fast . I was also asked to execute some SQL queries on my laptop.
Overall , this round went good according to my opinion.
Your task is to determine if two given strings are anagrams of each other. Two strings are considered anagrams if you can rearrange the letters of one string to form the...
Check if two strings are anagrams of each other by comparing their sorted characters.
Sort the characters of both strings and compare them.
Use a dictionary to count the frequency of characters in each string and compare the dictionaries.
Ensure both strings have the same length before proceeding with comparison.
Handle edge cases like empty strings or strings with different lengths.
Use SQL query with GROUP BY and HAVING clause to delete duplicate emails from a database.
Use GROUP BY clause to group emails together
Use HAVING clause to filter out groups with more than one email
Use DELETE statement to remove duplicate emails
DELETE removes specific rows from a table, while TRUNCATE removes all rows and resets auto-increment values.
DELETE is a DML command, while TRUNCATE is a DDL command.
DELETE can be rolled back, while TRUNCATE cannot be rolled back.
DELETE triggers ON DELETE triggers, while TRUNCATE does not trigger any triggers.
DELETE is slower as it maintains logs, while TRUNCATE is faster as it does not maintain logs.
Example: DELETE FRO...
Round duration - 30 Minutes
Round difficulty - Easy
This was a typical HR round with some standard Behavioral questions .
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.
C++ program to reverse a string
Use a loop to iterate through the string
Swap the characters at the beginning and end of the string
Continue swapping until the middle of the string is reached
I applied via Referral and was interviewed before Apr 2020. There were 3 interview rounds.
I applied via Approached by Company and was interviewed before Aug 2021. There was 1 interview round.
Abstract class can have implementation while interface cannot. Classes can implement multiple interfaces but only one abstract class.
Abstract class can have constructors while interface cannot.
Abstract class can have non-abstract methods while interface cannot.
Interfaces are used for full abstraction while abstract classes are used for partial abstraction.
Example: Abstract class - Animal with method eat() and subclass ...
Insertion sort and quicksort are sorting algorithms used to sort arrays of data.
Insertion sort: iterates through the array and inserts each element into its proper position.
Quicksort: selects a pivot element and partitions the array into two sub-arrays, one with elements less than the pivot and one with elements greater than the pivot.
Insertion sort is best for small arrays, while quicksort is best for large arrays.
Bot...
Merge two sorted linked lists using recursion
Create a recursive function that compares the first nodes of both lists
Set the smaller node as the head of the merged list and call the function again with the next node of the smaller list
Base case: if one list is empty, return the other list
Return the merged list
Given an integer, determine which byte is zero.
Convert the integer to a byte array using bitwise operations.
Iterate through the byte array and check for a zero value.
Return the index of the zero byte.
Consider endianness when converting to byte array.
To check endianness, create a 4-byte integer with a known value and check the byte order.
Create a 4-byte integer with a known value
Check the value of the first byte to determine endianness
If the first byte is the least significant, the machine is little endian
If the first byte is the most significant, the machine is big endian
Static objects can be used to print something before main() execution.
Static objects are initialized before main() execution
They can be used to print something before main()
Example: static int x = printf("Hello World!");
Output: Hello World! will be printed before main() execution
Static variables are allocated memory in the data segment of the program's memory space.
Static variables have a fixed memory location throughout the program's execution.
They are initialized to zero by default.
If initialized explicitly, they are stored in the data segment.
Static variables can be accessed by any function in the program.
Finding space and time complexity of a recursive function.
Space complexity is the amount of memory used by the function.
Time complexity is the amount of time taken by the function to execute.
Recursive functions have higher space complexity due to the call stack.
Time complexity can be calculated using Big O notation.
Examples of recursive functions include factorial and Fibonacci sequence.
Diamond hierarchy problem is a problem in object-oriented programming where a class inherits from multiple classes in a diamond-shaped hierarchy.
Occurs when a class inherits from two classes that share a common base class
Can lead to ambiguity in method calls and data members
Solved using virtual inheritance or by using interfaces
To determine if a point is inside a polygon, use the ray casting algorithm.
Create a line from the point to a point outside the polygon
Count the number of times the line intersects with the polygon edges
If the count is odd, the point is inside the polygon; otherwise, it is outside
The four storage classes in C are auto, register, static, and extern.
Auto: default storage class for all local variables
Register: used to define local variables that should be stored in a register instead of RAM
Static: used to define local variables that retain their value between function calls
Extern: used to declare a global variable that is defined in another file
i is stored in global data segment, j is stored in stack, k is stored in heap.
i is a global variable and is stored in the global data segment
j is a local variable and is stored in the stack
k is a pointer variable and is stored in the stack, while the memory it points to is allocated on the heap using malloc()
Use a hash table to store the words and check for existence in constant time.
Create a hash table with the words as keys and a boolean value as the value.
For each new word, check if it exists in the hash table. If it does, it has appeared before. If not, add it to the hash table.
Alternatively, use a set data structure to store only the unique words and check for existence in the set.
based on 1 interview
Interview experience
Software Engineer
136
salaries
| ₹20 L/yr - ₹68.8 L/yr |
Senior Software Engineer
109
salaries
| ₹27.6 L/yr - ₹105 L/yr |
Software Developer
104
salaries
| ₹20 L/yr - ₹85 L/yr |
Sde1
57
salaries
| ₹28 L/yr - ₹86 L/yr |
Software Development Engineer II
43
salaries
| ₹25 L/yr - ₹96 L/yr |
Salesforce
Amazon
Oracle