i
Persistent
Systems
Work with us
Filter interviews by
An array in Python is a data structure that can hold multiple values of the same data type.
Arrays in Python are created using square brackets []
Elements in an array can be accessed using their index starting from 0
Example: names = ['Alice', 'Bob', 'Charlie']
Virtualization in C++ is the process of creating a virtual version of a class or function to allow for polymorphism and dynamic binding.
Virtualization in C++ is achieved through the use of virtual functions and inheritance.
Virtual functions are declared in a base class and overridden in derived classes to provide different implementations.
Virtualization allows for polymorphism, where a pointer to a base class can ...
A constructor in C++ is a special member function that initializes objects of a class.
Constructors have the same name as the class.
They do not have a return type, not even void.
Constructors can be overloaded to initialize objects in different ways.
Example: `ClassName() { // initialization code }`
Default constructor: `ClassName() { // default initialization }`
Parameterized constructor: `ClassName(int x) { // initia...
Copy assignment operator is a special member function in C++ that allows one object to be assigned the values of another object of the same class.
Copy assignment operator is denoted by the = operator.
It is used to copy the values of one object into another object of the same class.
It is automatically generated by the compiler if not explicitly defined.
Example: MyClass obj1; MyClass obj2; obj2 = obj1; // Copy assig...
Implement a custom String class in a programming language.
Define a class with necessary properties and methods to manipulate strings.
Include methods for concatenation, substring, length, etc.
Handle memory allocation and deallocation properly.
Example: class MyString { // implementation }
Smart pointers are advanced memory management tools in C++ that automate resource management and prevent memory leaks.
Types of smart pointers: std::unique_ptr, std::shared_ptr, std::weak_ptr.
std::unique_ptr: Owns a resource exclusively, cannot be copied, only moved.
std::shared_ptr: Allows multiple pointers to share ownership of a resource.
std::weak_ptr: Provides a non-owning reference to a resource managed by std:...
Use a hashmap to store word frequencies in a sentence.
Split the sentence into words using a space delimiter.
Create a hashmap to store word frequencies.
Iterate through the words and update the frequencies in the hashmap.
Return the hashmap with word frequencies.
Count the occurrences of each character in a string using a dictionary or hash map for efficient counting.
Use a dictionary to store character counts. Example: 'hello' -> {'h': 1, 'e': 1, 'l': 2, 'o': 1}.
Iterate through each character in the string and update the count in the dictionary.
Consider using collections.Counter for a more concise solution in Python.
Handle edge cases like empty strings or strings with s...
Two programming code examples in any language
Example 1: Python - print('Hello, World!')
Example 2: Java - System.out.println('Hello, World!')
Hands-on experience with SQL queries for creating and manipulating tables and table elements.
Use CREATE TABLE statement to create a new table
Use ALTER TABLE statement to add, modify, or delete columns in a table
Use INSERT INTO statement to add new rows of data into a table
Use UPDATE statement to modify existing data in a table
Use DELETE statement to remove rows from a table
Basic MCQs on General aptitude, logical reasoning and programming questions
Copy assignment operator is a special member function in C++ that allows one object to be assigned the values of another object of the same class.
Copy assignment operator is denoted by the = operator.
It is used to copy the values of one object into another object of the same class.
It is automatically generated by the compiler if not explicitly defined.
Example: MyClass obj1; MyClass obj2; obj2 = obj1; // Copy assignment...
Virtualization in C++ is the process of creating a virtual version of a class or function to allow for polymorphism and dynamic binding.
Virtualization in C++ is achieved through the use of virtual functions and inheritance.
Virtual functions are declared in a base class and overridden in derived classes to provide different implementations.
Virtualization allows for polymorphism, where a pointer to a base class can point...
I applied via Campus Placement and was interviewed in Sep 2024. There were 3 interview rounds.
Aptitude, Technical MCQs
A calculator program performs basic arithmetic operations like addition, subtraction, multiplication, and division.
Implement functions for each operation: add, subtract, multiply, divide.
Example: add(5, 3) returns 8.
Handle edge cases like division by zero.
Consider user input validation for robustness.
I am interested in working with artificial intelligence and machine learning technologies.
Artificial Intelligence
Machine Learning
Natural Language Processing
Computer Vision
I applied via Campus Placement
Aptitude exam and coding test
Java has various datatypes like int, double, boolean, etc. to store different types of values.
Primitive datatypes include int, double, boolean, char, etc.
Reference datatypes include classes, interfaces, arrays, etc.
Examples: int num = 10; double price = 19.99; boolean isTrue = true;
Aptitude and two questions were there
You need to be very sharp. The question can be based on any DSA topic.
I applied via Campus Placement and was interviewed in Mar 2024. There were 4 interview rounds.
It was Aptitude+Coding test for the fundamentals of Computers related topics such as CN,OS,SDLC,OOPS,DBMS,etc
I appeared for an interview in Feb 2025, where I was asked the following questions.
Aptitude test normal questions
HashMap is a data structure that stores key-value pairs and uses hashing to quickly retrieve values based on keys.
HashMap internally uses an array of linked lists to store key-value pairs.
When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.
If multiple keys hash to the same index, a linked list is used to handle collisions.
To retrieve a value, the key is hashed a...
What people are saying about Persistent Systems
Some of the top questions asked at the Persistent Systems Software Engineer interview -
The duration of Persistent Systems Software Engineer interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 111 interview experiences
Difficulty level
Duration
based on 602 reviews
Rating in categories
Software Engineer
4.6k
salaries
| ₹4.7 L/yr - ₹11.1 L/yr |
Senior Software Engineer
4.6k
salaries
| ₹6.8 L/yr - ₹18.6 L/yr |
Lead Software Engineer
3.6k
salaries
| ₹9.5 L/yr - ₹17.2 L/yr |
Lead Engineer
3.5k
salaries
| ₹13.7 L/yr - ₹25 L/yr |
Project Lead
2.2k
salaries
| ₹21.2 L/yr - ₹39.3 L/yr |
Cognizant
TCS
IBM
LTIMindtree