i
Bentley Systems
Filter interviews by
It was good. The platform could be better.
The code from Round 1 involved implementing a sorting algorithm in Python.
Implemented a sorting algorithm in Python
Used concepts like loops, conditionals, and list manipulation
Example: Implemented bubble sort or selection sort
Top trending discussions
Snake game involves controlling a snake to eat food and grow in size without hitting walls or itself.
Create a grid system to represent the game board
Implement logic for snake movement and growth
Generate food randomly on the board for the snake to eat
Handle collision detection for walls and snake body
Keep track of score and game over conditions
I applied via Newspaper Ad and was interviewed in Sep 2021. There were 2 interview rounds.
There are two ways to throw an exception in exception handling.
Exceptions can be thrown using the throw keyword.
Exceptions can also be thrown implicitly by the runtime system.
Examples of explicit throwing include throw new Exception() and throw new IOException().
Examples of implicit throwing include division by zero or null pointer dereference.
Reverse a given string using array of characters.
Create an empty array to store the reversed string.
Loop through the original string from end to start.
Push each character into the empty array.
Join the array to form the reversed string.
Copy constructor creates a new object by copying an existing object, while assignment operator assigns the value of an existing object to another object.
Copy constructor is used to initialize a new object with the values of an existing object.
Assignment operator is used to assign the value of an existing object to another object.
Copy constructor is called when a new object is created from an existing object.
Assignment ...
A copy constructor is used to create a new object with the same values as an existing object. We implement our own to ensure proper copying of data members.
A copy constructor is needed when we want to create a new object with the same values as an existing object.
If we don't implement our own copy constructor, the default copy constructor provided by the compiler may not copy data members properly.
We can implement our ...
QT framework is used for developing cross-platform applications with a single codebase.
QT provides a wide range of libraries and tools for developing GUI applications.
QT supports multiple platforms including Windows, Linux, macOS, Android, and iOS.
QT has a large community and extensive documentation.
QT is written in C++ and supports other programming languages like Python and Java.
QT is used by companies like Autodesk,...
RTTI stands for Run-Time Type Identification.
RTTI is a feature in C++ that allows the type of an object to be determined at runtime.
It is used to implement dynamic_cast, typeid, and exception handling.
RTTI can be used to check if an object is of a certain type before casting it.
It can also be used to determine the type of an object in order to perform specific operations on it.
I have used the Singleton and Factory design patterns in my previous projects.
Singleton pattern was used to ensure only one instance of a class is created and provide a global point of access to it.
Factory pattern was used to create objects without exposing the instantiation logic to the client and provide a way to create objects of a family without specifying their concrete classes.
QT supports multiple operating systems and cross-compilation is possible.
QT supports Windows, macOS, Linux, Android, iOS, and many other operating systems.
Cross-compilation is possible, meaning you can compile for different operating systems on a single machine.
QT also supports embedded systems like Raspberry Pi and BeagleBone.
QT provides pre-built binaries for some operating systems, but for others, you may need to co...
QPointer is a deprecated Qt class used for storing and managing pointers.
QPointer is used to avoid dangling pointers in Qt applications.
It is a template class that can be used with any QObject-derived class.
QPointer is now deprecated and replaced by QWeakPointer.
QPointer can be used to check if a QObject is still valid before accessing it.
dpointer is a Qt framework concept used for efficient memory management.
dpointer is a private implementation pointer.
It is used to hide implementation details from the public API.
dpointer allows for copy-on-write semantics.
It reduces memory usage and improves performance.
Example: QString uses dpointer to store its data.
Example: QSharedDataPointer is used to share data between objects.
I have used Qt version 5.12.3 for my previous project.
Qt version 5.12.3 was used in my previous project
I have experience working with Qt 5.15.2 as well
I am familiar with the features and functionalities of Qt 5.12.3
To check if a linked list is circular, use two pointers, one moving at twice the speed of the other. If they meet, the list is circular.
Use two pointers, one moving at twice the speed of the other
If the faster pointer catches up to the slower pointer, the list is circular
If the faster pointer reaches the end of the list, the list is not circular
Find the merge point of 2 linked lists.
Traverse both lists and find their lengths
Move the pointer of the longer list to the same distance as the shorter list
Move both pointers until they meet at the merge point
If there is no merge point, return null
To find a string in a sorted array of strings.
Use binary search algorithm to search for the string in the array.
Compare the search string with the middle element of the array.
If the search string is less than the middle element, search in the left half of the array.
If the search string is greater than the middle element, search in the right half of the array.
Repeat the process until the string is found or the search sp
Singleton class is a design pattern that restricts the instantiation of a class to one object.
To create a singleton, we need to make the constructor private and provide a static method to get the instance of the class.
To delete the singleton object, we can simply set the instance to null.
Singletons are useful when we need to ensure that only one instance of a class exists throughout the application.
Example: Logger clas...
Dynamic memory allocation in C/C++ is done using malloc(), calloc(), realloc() functions. C++ also has new and delete operators.
malloc() allocates memory block of specified size
calloc() allocates memory block and initializes it to zero
realloc() changes the size of previously allocated memory block
new operator in C++ allocates memory and calls constructor
delete operator in C++ deallocates memory and calls destructor
posted on 14 May 2017
I appeared for an interview in Oct 2016.
posted on 21 Feb 2022
I applied via Referral and was interviewed before Feb 2021. There were 3 interview rounds.
Group discussion on the given topic
posted on 26 Sep 2024
Find the 2nd largest number in list
I appeared for an interview before Feb 2024.
Coding of Java and Sql
I appeared for an interview in Jan 2025.
Indexing is a technique used to optimize the performance of databases by creating a data structure that allows for quick lookup of data.
Indexing involves creating a data structure that maps key values to their corresponding data entries.
It helps in speeding up data retrieval operations by reducing the number of disk accesses needed.
Examples of indexing include creating indexes on columns in a database table to improve
I applied via Referral and was interviewed in Mar 2023. There were 4 interview rounds.
There was a test with 4 questions and 3 to be answered mandatorily, 1 SQL and 2 Programming on our preferred language and a paragraph writing as 5th question.
based on 1 interview
Interview experience
Software Engineer Level 1
86
salaries
| ₹6 L/yr - ₹17 L/yr |
Software Engineer
51
salaries
| ₹4.8 L/yr - ₹16.8 L/yr |
Associate Software Engineer
44
salaries
| ₹5.1 L/yr - ₹11.5 L/yr |
Technical Support Engineer
43
salaries
| ₹4.8 L/yr - ₹18 L/yr |
Software Engineer II
33
salaries
| ₹7.3 L/yr - ₹21.5 L/yr |
Thomson Reuters
Oracle Cerner
Temenos
UKG