i
Dassault Systemes
Filter interviews by
I applied via Referral and was interviewed before Sep 2021. There were 2 interview rounds.
Constructors are called in order of inheritance, while destructors are called in reverse order.
Constructors are called when an object is created.
Destructors are called when an object is destroyed.
Inheritance affects the order of constructor calls.
Destructors are called in reverse order of constructors.
The Friends class in C++ allows access to private and protected members of a class by other classes.
The Friends class is declared inside the class that needs to grant access to its private/protected members.
The Friends class can be a friend of multiple classes.
Example: class A { friend class B; }; class B { friend class C; };
Example: class A { friend void B::function(); }; class B { void function() { //access A's priva
To determine if a point lies inside, on or outside a circle, we need to calculate the distance between the point and the center of the circle.
Calculate the distance between the point and the center of the circle using the distance formula
If the distance is greater than the radius of the circle, the point is outside the circle
If the distance is equal to the radius of the circle, the point is on the circle
If the distance...
posted on 16 Sep 2021
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
Pretty easy questions.
You are provided with an array of integers ARR
of size N
and an integer K
. Your task is to find and return the K
-th smallest value present in the array. All elements...
Find the K-th smallest element in an array of distinct integers.
Sort the array and return the element at index K-1.
Use a min-heap to find the K-th smallest element efficiently.
Implement quickselect algorithm for optimal performance.
Round duration - 20 Minutes
Round difficulty - Easy
1 coding question
Given a string S
consisting only of digits from 0 to 9, your task is to find all potential IP addresses that can be formed from S
and list them in lexicographical order. I...
Given a string of digits, find all potential valid IP addresses that can be formed from it.
Split the string into four parts and check if each part is a valid IP segment (0-255).
Use backtracking to generate all possible combinations of valid IP addresses.
Ensure that the IP address does not contain leading zeroes.
Return the valid IP addresses in lexicographical order.
Round duration - 45 Minutes
Round difficulty - Easy
Total Discussion on OS concepts
Memory management in operating systems involves allocation, deallocation, and optimization of memory usage.
Memory allocation: OS allocates memory to processes based on their requirements.
Memory deallocation: OS frees up memory when it is no longer needed by a process.
Memory optimization: OS optimizes memory usage through techniques like paging, segmentation, and virtual memory.
Examples: Paging in which memory is divide...
Round duration - 45 Minutes
Round difficulty - Easy
Easy in office environment
Your task is to identify the position of the only '1' bit in the binary representation of a given non-negative integer N
. The representation contains exactly one '1' and the rest are...
Find the position of the lone '1' bit in the binary representation of a given non-negative integer.
Iterate through the bits of the integer to find the position of the lone '1'.
Use bitwise operations to check if there is exactly one '1' bit in the binary representation.
Return the position of the lone '1' or -1 if there isn't exactly one '1'.
Tip 1 : Do a good project.
Tip 2 : Master the topics you are preparing.
Tip 1 : Avoid writing things you do not know
Tip 2 : Follow a proper format for Resume.
I applied via Naukri.com and was interviewed in Jun 2020. There were 5 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.
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 any three numbers is equal to the square of another number.
Return 'y...
Given a string STR
consisting of lowercase English letters, identify the first non-repeating character in the string and return it. If no such characte...
Identify the first non-repeating character in a string and return it, or '#' if none exists.
Iterate through the string to count the frequency of each character
Iterate through the string again to find the first character with frequency 1
Return the first non-repeating character or '#' if none exists
Round duration - 70 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 . After DS and Algo , I was asked some questions from OOPS and Java followed by some Unix Commands and basic concepts from Operating Systems.
Given an array ARR
of size 'N', where each integer is in the range from 0 to N - 1, identify all elements that appear more than once.
Return the duplicate elements in any orde...
Find duplicates in an array of integers within a specified range.
Iterate through the array and keep track of the count of each element using a hashmap.
Return elements with count greater than 1 as duplicates.
Time complexity can be optimized to O(N) using a set to store duplicates.
Given a singly linked list of integers, return the head of the reversed linked list.
Initial linked list: 1 -> 2 -> 3 -> 4 -> NULL
Reversed link...
Reverse a singly linked list of integers and return the head of the reversed linked list.
Iterate through the linked list and reverse the pointers to point to the previous node instead of the next node.
Use three pointers - prev, current, and next to reverse the linked list in O(N) time and O(1) space complexity.
Update the head of the reversed linked list as the last node encountered during the reversal process.
Serialization is the process of converting an object into a byte stream, while deserialization is the reverse process.
Serialization is used to persist object state or transmit objects over a network.
Deserialization reconstructs the object from the byte stream.
Java provides Serializable interface for serialization and ObjectInputStream/ObjectOutputStream classes for deserialization.
Example: Serializing an object to a fi
Singleton class in Java ensures that a class has only one instance and provides a global point of access to it.
Singleton class restricts the instantiation of a class to one object.
It provides a way to access its unique instance globally.
Commonly implemented using a private constructor and a static method to return the instance.
Example: Logger class in a multi-threaded application.
Piping in Unix/Linux allows the output of one command to be used as the input for another command.
Piping is done using the | symbol
It helps in connecting multiple commands together to perform complex operations
Example: ls -l | grep .txt - This command lists all files in long format and then filters out only the .txt files
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.
I applied via Naukri.com and was interviewed in Mar 2020. There were 4 interview rounds.
Rotational shifts refer to working in different shifts at different times. Web service flow is the sequence of steps involved in a web service request. Checking ports on Unix or Solaris machine involves using the netstat command.
Rotational shifts involve working in different shifts at different times, such as day shift, night shift, and swing shift.
Web service flow involves a sequence of steps, such as sending a reques...
I applied via Campus Placement
I appeared for an interview in Nov 2016.
Seeking better growth opportunities and challenges
Limited growth potential in current role
Desire to work on more challenging projects
Looking for a company with a better cultural fit
Relocating to a new area
I appeared for an interview before Dec 2020.
Round duration - 60 minutes
Round difficulty - Easy
This was a 60 minute technical round involving questions based on data structures, OOPS concepts, DBMS and projects that I had mentioned in my resume.
Calculate the Nth term in the Fibonacci sequence, where the sequence is defined as follows: F(n) = F(n-1) + F(n-2)
, with initial conditions F(1) = F(2) = 1
.
Calculate the Nth Fibonacci number efficiently using recursion or dynamic programming.
Implement a recursive function to calculate the Nth Fibonacci number.
Use memoization to store previously calculated Fibonacci numbers for efficiency.
Consider using dynamic programming to optimize the solution.
Handle edge cases such as N = 1 or N = 2 separately.
Ensure the solution works efficiently for large values of N (up to 10000).
Operator overloading in OOP allows custom behavior for operators like +, -, *, etc.
Operator overloading is a feature in OOP that allows defining custom behavior for operators
Example: Overloading the + operator to concatenate strings or add two numbers
Example: Overloading the * operator to perform matrix multiplication
Function overloading is when multiple functions have the same name but different parameters or return types.
Allows multiple functions with the same name but different parameters or return types
Helps improve code readability and maintainability
Example: int add(int a, int b) and float add(float a, float b)
C is a procedural programming language while C++ is a multi-paradigm programming language with object-oriented features.
C is a procedural programming language while C++ supports both procedural and object-oriented programming.
C does not support classes and objects while C++ does.
C does not have built-in support for exception handling while C++ does.
C does not have namespaces while C++ does.
C does not have function over
Round duration - 45 minutes
Round difficulty - Easy
HR round that lasted for 45 minutes. Did brainstorming on puzzles and HR asked questions to know more about me.
Tips : During HR, think before you speak, they can catch any word that you speak. Prepare well for aptitude, as they shortlist less people after the test. Ask good questions during the end of the interviews. It might impress them. So prepare for it before going for the interview. Lastly, don’t be nervous, HRs are only trying to make you nervous during the interview as a part of the stress test.
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.
I appeared for an interview before Dec 2020.
Round duration - 60 minutes
Round difficulty - Medium
This was a 60 minute technical round where the interviewer asked programming based questions and questions on DBMS concepts.
Given an array of 'N' non-negative integers and an integer 'K', your task is to find the maximum elements for each subarray of size 'K'.
The first line contains...
Find the maximum elements for each subarray of size 'K' in an array of non-negative integers.
Iterate through the array and maintain a deque to store the indices of elements in decreasing order.
Pop elements from the deque if they are out of the current window of size 'K'.
The front of the deque will always have the index of the maximum element in the current window.
ACID properties are a set of properties that guarantee the reliability of transactions in database management systems.
Atomicity ensures that either all operations in a transaction are completed successfully or none of them are. For example, transferring money from one account to another should either be completed in full or not at all.
Consistency ensures that the database remains in a consistent state before and after ...
Write-ahead logging is a technique used in DBMS to ensure that changes are recorded in the log before they are applied to the database.
Write-ahead logging ensures that changes are first written to the log file before being applied to the database to maintain data integrity.
It helps in recovering the database in case of a system crash or failure by replaying the log entries to bring the database back to a consistent sta...
Deadlock avoidance schemes are strategies used to prevent deadlocks in a system.
Banker's algorithm: Ensures that the system will never enter an unsafe state by keeping track of available resources and only granting a request if it does not lead to a deadlock.
Wait-die and Wound-wait: Two deadlock prevention schemes used in transaction processing systems to avoid deadlocks by allowing transactions to wait or abort based ...
A clustered index is a type of index that sorts and stores the data rows in the table based on their key values.
Defines the order in which data is physically stored in a table
Only one clustered index per table
Helps in improving the performance of queries that involve range searches or sorting
Example: Clustered index on a table's primary key
Round duration - 60 minutes
Round difficulty - Easy
This was a 60 minute technical round where the interviewer asked data structure based questions, questions on OOPS and OS concepts.
A virtual function in C++ is a function that is declared within a base class and is redefined by a derived class.
Virtual functions allow a function to be overridden in a derived class.
They are used in polymorphism to achieve runtime binding.
The base class function must be declared as virtual for dynamic binding to occur.
Example: virtual void display() = 0; // pure virtual function
malloc() is used to dynamically allocate memory in C, while free() is used to release allocated memory.
malloc() allocates a block of memory of specified size and returns a pointer to the beginning of the block.
free() deallocates the memory previously allocated by malloc() or calloc().
Example: int *ptr = (int*)malloc(5 * sizeof(int)); // Allocates memory for 5 integers
Example: free(ptr); // Deallocates the memory alloca
Structure padding is the concept of adding empty bytes to a structure to align its data members on memory boundaries.
Structure padding is done to optimize memory access and improve performance.
Padding is necessary because most processors require data to be aligned on specific memory boundaries for efficient access.
For example, if a structure contains a char followed by an int, padding may be added after the char to ali
Round duration - 30 minutes
Round difficulty - Easy
HR based round that lasted for 30 minutes. The interviewer asked question to know more about me.
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.
R&D Engineer
615
salaries
| ₹6 L/yr - ₹25 L/yr |
Software Engineering Specialist
367
salaries
| ₹7 L/yr - ₹18.8 L/yr |
Software Developer
351
salaries
| ₹5 L/yr - ₹20 L/yr |
Software Engineer
304
salaries
| ₹6 L/yr - ₹18 L/yr |
QA Engineer
134
salaries
| ₹4.8 L/yr - ₹13.5 L/yr |
Autodesk
Oracle
Amdocs
Automatic Data Processing (ADP)