i
KPIT Technologies
Filter interviews by
I appeared for an interview before Dec 2023.
I want to join KPIT because of its reputation for innovation and growth opportunities in the field of Accounts & Finance.
KPIT is known for its cutting-edge technology solutions in the automotive industry.
I am impressed by KPIT's commitment to sustainability and corporate social responsibility.
I believe KPIT's global presence will provide me with valuable international exposure.
I am excited about the opportunity to ...
Yes, I believe in planning for the long term to ensure stability and growth.
I always set long term financial goals and create a strategic plan to achieve them.
I regularly review and adjust my financial strategies to stay on track towards long term objectives.
Examples of long term planning include investing in retirement funds, creating savings plans, and budgeting for major expenses.
I believe in the importance of forec...
Calculate the number of children and grandchildren
Count the number of direct children of a person
Count the number of grandchildren of a person
Use recursion to count all descendants
Consider only living descendants
Exclude step-children and adopted children
I appeared for an interview before May 2021.
Round duration - 90 minutes
Round difficulty - Medium
Given 'N' students standing in a row with specific heights, your task is to find the length of the longest strictly increasing subsequence of their heights...
Find the length of the longest strictly increasing subsequence of heights of students in a row.
Iterate through the heights array and for each element, find the length of the longest increasing subsequence ending at that element.
Use dynamic programming to keep track of the longest increasing subsequence length for each element.
Return the maximum length found as the result.
You are given the start and end times of 'N' intervals. Write a function to determine if any two intervals overlap.
If an interval ends at time T and anothe...
Given start and end times of intervals, determine if any two intervals overlap.
Iterate through intervals and check if any two intervals overlap by comparing their start and end times
Sort intervals based on start times for efficient comparison
Consider edge cases where intervals end and start at the same time
Various SQL queries related to data manipulation and retrieval were asked during the interview.
Basic SELECT queries to retrieve data from a single table
JOIN queries to retrieve data from multiple tables based on a common column
Aggregate functions like COUNT, SUM, AVG, etc. to perform calculations on data
Subqueries to retrieve data based on the result of another query
UPDATE queries to modify existing data in a table
DELE...
Round duration - 60 Minutes
Round difficulty - Medium
Given a string STR
of size N
and an integer M
representing the number of rows in the zig-zag pattern, return the string formed by concatenating all rows when the string ST...
Arrange a string in zig-zag pattern with given number of rows and concatenate the rows.
Iterate through the string and distribute characters to rows based on zig-zag pattern
Concatenate the characters in each row to get the final result
Handle edge cases like when number of rows is 1 or equal to the length of the string
You are given a permutation of 'N' integers. A sequence of 'N' integers is considered a permutation if it includes all integers from 1 to 'N' exactly once. Your task is ...
The task is to rearrange a given permutation of 'N' integers to form the lexicographically next greater permutation.
Iterate from right to left to find the first element that is smaller than the element to its right.
Swap this element with the smallest element to its right that is greater than it.
Reverse the elements to the right of the swapped element to get the lexicographically next greater permutation.
Round duration - 60 Minutes
Round difficulty - Medium
Given a string S, your task is to recursively remove all consecutive duplicate characters from the string.
String S
Output string
Recursively remove consecutive duplicate characters from a string.
Use recursion to check if the current character is the same as the next character, if so skip the next character
Base case: if the string is empty or has only one character, return the string
Example: Input: 'aaabcc', Output: 'abc'
Given an input string 'S', you are tasked with finding and returning all possible permutations of the input string.
The first and only line of input ...
Return all possible permutations of a given input string.
Use recursion to generate all possible permutations of the input string.
Swap characters at different positions to generate permutations.
Handle duplicate characters in the input string by using a set to store unique permutations.
Round duration - 60 Minutes
Round difficulty - Medium
Design an e-commerce website similar to Flipkart or Amazon.
Implement user-friendly interface for easy navigation
Include search functionality with filters for products
Incorporate secure payment gateway for transactions
Provide personalized recommendations based on user behavior
Include customer reviews and ratings for products
Implement order tracking and delivery status updates
Offer various payment options like credit/deb
Tip 1 : Prepare DSA well. Standard Leetcode-type questions will be asked.
Tip 2 : You should be crystal clear about your project/s as any question would be asked and you should be able to answer it.
Tip 3 : Prepare CS fundaments like OS, OOPs, DBMS, etc.
Tip 1 : Clearly mention the tech. stack you have worked on in the project/s
Tip 2 : As a fresher, you should add your coding profiles on CodeChef, Codeforces, etc. so as to make the resume shortlisting easy
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.
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
Senior Software Engineer
2.5k
salaries
| ₹6 L/yr - ₹19 L/yr |
Software Engineer
2.3k
salaries
| ₹3.2 L/yr - ₹11.5 L/yr |
Technical Lead
1.9k
salaries
| ₹8.3 L/yr - ₹26 L/yr |
Senior Technical Lead
824
salaries
| ₹10 L/yr - ₹35 L/yr |
Software Developer
656
salaries
| ₹3.9 L/yr - ₹15.6 L/yr |
Amdocs
Automatic Data Processing (ADP)
24/7 Customer
Intellect Design Arena