Mahindra Comviva interview experience Real time questions & tips from candidates to crack your interview

Product Development Engineer

Mahindra Comviva
upvote
share-icon
4 rounds | 7 Coding problems

Interview preparation journey

expand-icon
Preparation
Duration: 4 months
Topics: Data Structures, Pointers, OOPS, System Design, Algorithms, Dynamic Programming
Tip
Tip

Tip 1 : Practice daily question of DS algo
Tip 2 : Prepare all your projects
Tip 3 : Daily practice of aptitude
Tip 4 : Practice previous years Company questions

Application process
Where: Campus
Eligibility: 6.5 CGPA
Resume Tip
Resume tip

Tip 1 : Resume should contains only those skills that you know
Tip 2 : Add good projects and add github link to it also
Tip 3 : Resume should not be too long

Interview rounds

01
Round
Medium
Online Coding Interview
Duration150 minutes
Interview date5 Dec 2019
Coding problem2

The test consisted of 2 coding question and 25 questions of quantitative, reasoning and technical question based on DBMS, Data structrues

1. Left View Of Binary Tree

Moderate
30m average time
60% success
0/80
Asked in companies
SAP LabsZSThought Works

You have been given a Binary Tree of 'n' nodes, where the nodes have integer values



Example :
If the input tree is as depicted in the picture: 

alt text

The Left View of the tree will be:  2 35 2 
Problem approach

The problem can be solved using simple recursive traversal. We can keep track of the level of a node by passing a parameter to all recursive calls. The idea is to keep track of the maximum level also. Whenever we see a node whose level is more than maximum level so far, we print the node because this is the first node in its level (Note that we traverse the left subtree before right subtree).

Try solving now

2. Middle Of Linked List

Easy
20m average time
80% success
0/40
Asked in companies
NoBrokerIBMHCL Technologies

Given a singly linked list of 'N' nodes. The objective is to determine the middle node of a singly linked list. However, if the list has an even number of nodes, we return the second middle node.

Note:
1. If the list is empty, the function immediately returns None because there is no middle node to find.
2. If the list has only one node, then the only node in the list is trivially the middle node, and the function returns that node.
Problem approach

Traverse linked list using two-pointers. Move one pointer by one and the other pointers by two. When the fast pointer reaches the end, the slow pointer will reach the middle of the linked list.

Try solving now
02
Round
Medium
Video Call
Duration30 minutes
Interview date13 Dec 2019
Coding problem3

The interviewer was cool and calm . He starts questioning by asking about my projects. Then he asked me questions about DS algo . He also asked me questions related to DBMS. Then he gave me coding problems to solve.

1. Encode The String

Easy
10m average time
80% success
0/40
Asked in companies
Goldman SachsMahindra ComvivaGoogle inc

You are given a string ‘S’ of length ‘N’. The string can be encoded using the following rules:

1) If the ‘i-th’ character is a vowel, change it to the next character in the alphabetical sequence. For example, the next character of ‘o’ is ‘p’.

2) If the ‘i-th’ character is a consonant, change it to the previous character in the alphabetical sequence. For example, the previous character of ‘h’ is ‘g’.

3) The next character of ‘z’ is ‘a’.

4) The previous character of ‘a’ is ‘z’.

Find the encoded string.

Example :
‘N’ = 4, ‘S’ = “code”

Character ‘c’ gets changed to ‘b’.
Character ‘o’ gets changed to ‘p’.
Character ‘d’ gets changed to ‘c’.
Character ‘e’ gets changed to ‘f’.

Encoded string = “bpcf”
Problem approach

Follow the steps below to solve this problem:

Pick the first character from the source string. 
Append the picked character to the destination string. 
Count the number of subsequent occurrences of the picked character and append the count to the destination string. 
Pick the next character and repeat steps 2, 3 and 4 if the end of the string is NOT reached.

Try solving now

2. Majority element

Easy
15m average time
85% success
0/40
Asked in companies
Thought WorksInfo Edge India (Naukri.com)HCL Technologies

You have been 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, print -1.

Note:
A majority element is an element that occurs more than floor('N' / 2) times in the array.
Problem approach

Approach: The basic solution is to have two loops and keep track of the maximum count for all different elements. If maximum count becomes greater than n/2 then break the loops and return the element having maximum count. If the maximum count doesn’t become more than n/2 then the majority element doesn’t exist.

Algorithm: 

Create a variable to store the max count, count = 0
Traverse through the array from start to end.
For every element in the array run another loop to find the count of similar elements in the given array.
If the count is greater than the max count update the max count and store the index in another variable.
If the maximum count is greater than the half the size of the array, print the element. Else print there is no majority element.

Try solving now

3. Merge Sort

Easy
15m average time
85% success
0/40
Asked in companies
Media.netHewlett Packard EnterpriseIBM

Given a sequence of numbers ‘ARR’. Your task is to return a sorted sequence of ‘ARR’ in non-descending order with help of the merge sort algorithm.

Example :

Merge Sort Algorithm -

Merge sort is a Divide and Conquer based Algorithm. It divides the input array into two-parts, until the size of the input array is not ‘1’. In the return part, it will merge two sorted arrays a return a whole merged sorted array.

subsequence

The above illustrates shows how merge sort works.
Note :
It is compulsory to use the ‘Merge Sort’ algorithm.
Problem approach

I divided the input array into two halves, calls itself for the two halves, and then merge the two sorted halves. The merge() function is used for merging two halves. The merge(arr, l, m, r) is a key process that assumes that arr[l..m] and arr[m+1..r] are sorted and merges the two sorted sub-arrays into one.

Try solving now
03
Round
Easy
Assignment
Duration30 minutes
Interview date13 Dec 2019
Coding problem1

1. Assignment

I was asked to write on the topic “If intelligence Grew On Trees” in about 200 words.

04
Round
Easy
HR Round
Duration20 minutes
Interview date15 Dec 2019
Coding problem1

1. Basic HR questions

Tell Me something about yourself.

A situation was asked where my and team leader’s opinion were different and what was the result of this and how i coped up with it?

One person you admired and why?

Tell me your favorite subject

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
Product Development Engineer
4 rounds | 4 problems
Interviewed by Mahindra Comviva
1161 views
1 comments
0 upvotes
Product Development Engineer
2 rounds | 4 problems
Interviewed by Mahindra Comviva
1451 views
0 comments
0 upvotes
Product Development Engineer
3 rounds | 5 problems
Interviewed by Mahindra Comviva
0 views
0 comments
0 upvotes
Product Development Engineer
2 rounds | 3 problems
Interviewed by Mahindra Comviva
0 views
2 comments
0 upvotes