Dassault Systemes Solutions Lab pvt ltd interview experience Real time questions & tips from candidates to crack your interview

Software Engineer

Dassault Systemes Solutions Lab pvt ltd
upvote
share-icon
3 rounds | 10 Coding problems

Interview preparation journey

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

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.

Application process
Where: Campus
Eligibility: Above 7 CGPA
Resume Tip
Resume tip

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.

Interview rounds

01
Round
Medium
Online Coding Test
Duration70 minutes
Interview date21 Dec 2021
Coding problem2

This was an online coding round where we had 2 questions and some Technical MCQ's to solve. The coding questions were supposed to be solved under 1 hour and the questions were not so tough as such.

1. Next Greater Element

Moderate
20m average time
90% success
0/80
Asked in companies
CIS - Cyber InfrastructureAmazonPhonePe

You are given an array arr of length N. You have to return a list of integers containing the NGE(next greater element) of each element of the given array. The NGE for an element X is the first greater element on the right side of X in the array. Elements for which no greater element exists, consider the NGE as -1.

For Example :

If the given array is [1, 3, 2], then you need to return [3, -1, -1]. Because for 1, 3 is the next greater element, for 3 it does not have any greater number to its right, and similarly for 2.
Problem approach

Approach :

1) Initialize an array ‘ANS’ of integer type and the same size as the input array to store the Next Greater Elements.

2) Declare a stack ‘S’ of integer type that will have Next Greater Element as its top element.

3) Iterate the array in reverse order. (say, iterator = ‘i’).

4) Pop from ‘S’ until the stack ‘S’ is not empty and the current element is greater than the top element of the stack.

5) Update ‘ANS[i]’ with the top element of ‘S’.

6) If the stack is empty then update ‘ANS[i]’ with -1.

7) Push the current element onto the stack ‘S’.

8) Return ‘ANS’.


TC : O(N), where N=number of elements in the array
SC : O(N)

Try solving now

2. Arranging Array

Easy
15m average time
85% success
0/40
Asked in companies
Dassault Systemes Solutions Lab pvt ltdPersistent Systems Limited

You are given an array of N integers. Your task is to rearrange the elements of the array such that the total XOR sum of all adjacent elements is maximized.

The XOR sum is defined as follows. For an array a of size N, compute:

F = (a[1] ⊕ a[0]) + (a[2] ⊕ a[1]) + ... + (a[N-1] ⊕ a[N-2]) where ⊕ denotes the bitwise XOR operator.

Your goal is to output a permutation of the original array that results in the maximum possible value of F.

Note :
You do not need to print anything; it has already been taken care of. Just implement the given function. 
Problem approach

Approach :

1) Sort the array in descending order.
2) Print all the ones, if present.
3) From the remaining array print it in descending order making sure not to reprint the ones again.

TC : O(N * log(N)), where N=size of the array.
SC : O(1)

Try solving now
02
Round
Medium
Video Call
Duration60 minutes
Interview date21 Dec 2021
Coding problem7

This round started with 2 coding questions and then moved on to some more questions from OOPS.

1. Palindrome Linked List

Easy
20m average time
90% success
0/40
Asked in companies
Livekeeping (An IndiaMART Company)AppleThought Works

You are given a singly Linked List of integers. Your task is to return true if the given singly linked list is a palindrome otherwise returns false.

For example:
The given linked list is 1 -> 2 -> 3 -> 2-> 1-> NULL.

It is a palindrome linked list because the given linked list has the same order of elements when traversed forwards and backward​.
Follow Up:
Can you solve the problem in O(N) time complexity and O(1) space complexity iteratively?
Problem approach

Approach :

1) Recursively traverse the entire linked list to get the last node as a rightmost node.

2) When we return from the last recursion stack. We will be at the last node of the Linked List. Then the last node value is compared with the first node value of Linked List.

3) In order to access the first node of Linked List, we create a global left pointer that points to the head of Linked List initially that will be available for every call of recursion and the right pointer which passes in the function parameter of recursion.

4) Now, if the left and right pointer node value is matched then return true from the current recursion call. Then the recursion falls back to (n-2)th node, and then we need a reference to the 2nd node from head. So we advance the left pointer in the previous call to refer to the next node in the Linked List.

5) If all the recursive calls are returning true, it means the given Linked List is a palindrome else it is not a palindrome.


TC : O(N), where N = number of nodes in the linked list.
SC : O(N)

Try solving now

2. Search an element in a sorted and rotated array

Moderate
30m average time
65% success
0/80
Asked in companies
FreshworksExpedia GroupPayPal

Aahad and Harshit always have fun by solving problems. Harshit took a sorted array consisting of distinct integers and rotated it clockwise by an unknown amount. For example, he took a sorted array = [1, 2, 3, 4, 5] and if he rotates it by 2, then the array becomes: [4, 5, 1, 2, 3].

After rotating a sorted array, Aahad needs to answer Q queries asked by Harshit, each of them is described by one integer Q[i]. which Harshit wanted him to search in the array. For each query, if he found it, he had to shout the index of the number, otherwise, he had to shout -1.

For each query, you have to complete the given method where 'key' denotes Q[i]. If the key exists in the array, return the index of the 'key', otherwise, return -1.

Note:

Can you solve each query in O(logN) ?
Problem approach

This was a preety standard Binary Search Question and I had solved this question before on platforms like LeetCode and CodeStudio. I was asked this question to test my implementation skills and how well do I handle Edge Cases.

Approach :

1) The idea is to find the pivot point, divide the array in two sub-arrays and perform binary search.

2) The main idea for finding pivot is – for a sorted (in increasing order) and pivoted array, pivot element is the only element for which next element to it is smaller than it.

3) Using the above statement and binary search pivot can be found.

4) After the pivot is found out divide the array in two sub-arrays.

5) Now the individual sub–arrays are sorted so the element can be searched using Binary Search.


TC : O(Log(N))
SC : O(1)

Try solving now

3. OOPS Question

What is Static variable in C ?

Problem approach

1) Static variables are initialized only once.

2) The compiler persists with the variable till the end of the program.

3) Static variables can be defined inside or outside the function.

4) They are local to the block.

5) The default value of static variables is zero.

6) The static variables are alive till the execution of the program.


Here is the syntax of static variables in C language,

static datatype variable_name = value;

Here,
datatype − The datatype of variable like int, char, float etc.
variable_name − This is the name of variable given by user.
value − Any value to initialize the variable. By default, it is zero.

4. OOPS Question

What is the Difference Between Abstraction and Inheritance?

Problem approach

The main difference between abstraction and inheritance is that abstraction allows hiding the internal details and displaying only the functionality to the users, while inheritance allows using properties and methods of an already existing class.

5. OOPS Question

“Java is not a pure OO language”. Justify this statement.

Problem approach

Java is not fully object oriented because it supports primitive data type like it,byte,long etc.,which are not objects. Because in JAVA we use data types like int, float, double etc which are not object oriented, and of course is what the opposite of OOP is. That is why JAVA is not 100% objected oriented.

6. OOPS Question

What are some advantages of using OOPs?

Problem approach

1) OOPs is very helpful in solving very complex level of problems.

2) Highly complex programs can be created, handled, and maintained easily using object-oriented programming.

3) OOPs, promote code reuse, thereby reducing redundancy.

4) OOPs also helps to hide the unnecessary details with the help of Data Abstraction.

5) OOPs, are based on a bottom-up approach, unlike the Structural programming paradigm, which uses a top-down approach.

6) Polymorphism offers a lot of flexibility in OOPs.

7. OOPS Question

What are access specifiers and what is their significance?

Problem approach

Access specifiers, as the name suggests, are a special type of keywords, which are used to control or specify the accessibility of entities like classes, methods, etc. Some of the access specifiers or access modifiers include “private”, “public”, etc. These access specifiers also play a very vital role in achieving Encapsulation - one of the major features of OOPs.

03
Round
Easy
HR Round
Duration30 minutes
Interview date21 Dec 2021
Coding problem1

This was my last round and I hoped it to go good just like the other rounds. The interviewer was very straight to point and professional. The interview lasted for 30 minutes.

1. Basic HR Question

Why should we hire you ?


 

Problem approach

Tip 1 : The cross questioning can go intense some time, think before you speak.

Tip 2 : Be open minded and answer whatever you are thinking, in these rounds I feel it is important to have opinion.

Tip 3 : Context of questions can be switched, pay attention to the details. It is okay to ask questions in these round, like what are the projects currently the company is investing, which team you are mentoring. How all is the work environment etc.

Tip 4 : Since everybody in the interview panel is from tech background, here too you can expect some technical questions. No coding in most of the cases but some discussions over the design can surely happen.

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
company logo
SDE - 1
3 rounds | 7 problems
Interviewed by OYO
4657 views
0 comments
0 upvotes
company logo
SDE - Intern
2 rounds | 3 problems
Interviewed by Amazon
960 views
0 comments
0 upvotes
company logo
SDE - 1
2 rounds | 5 problems
Interviewed by Meesho
6450 views
0 comments
0 upvotes
company logo
SDE - 1
3 rounds | 9 problems
Interviewed by Salesforce
3451 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
Software Engineer
3 rounds | 7 problems
Interviewed by Optum
7874 views
1 comments
0 upvotes
company logo
Software Engineer
5 rounds | 5 problems
Interviewed by Microsoft
9973 views
1 comments
0 upvotes
company logo
Software Engineer
2 rounds | 4 problems
Interviewed by Amazon
4310 views
1 comments
0 upvotes