Aricent Technologies (Holdings) Limited interview experience Real time questions & tips from candidates to crack your interview

Software Engineer

Aricent Technologies (Holdings) Limited
upvote
share-icon
2 rounds | 9 Coding problems

Interview preparation journey

expand-icon
Preparation
Duration: 6 months
Topics: Data Structures, Algorithms, OS, Networking, 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
Easy
Face to Face
Duration60 minutes
Interview date3 Jun 2015
Coding problem5

Technical Interview round with questions on Programming and OOPS.

1. Remove spaces from a given string

Easy
0/40
Asked in companies
OracleAricent Technologies (Holdings) LimitedDaffodil Software

Given a string “STR”, you need to remove spaces from the string “STR” and rewrite in the Pascal case. Your task is to return the string “STR”.

In the Pascal case writing style we don’t have spaces between words and all words begin with uppercase letters including the first word.

Note:

Input string “STR” will only consist of lowercase English Alphabets. The string will not contain white space at the beginning and end of the string.
Problem approach

Simple Solution :
1) Iterate through all characters of given string, do following
a) If current character is a space, then move all subsequent characters one position back and decrease length of the result string.
Time complexity of above solution is O(n^2).


A Better Solution can solve it in O(n) time. The idea is to keep track of count of non-space character seen so far. 
1) Initialize 'count' = 0 (Count of non-space character seen so far)
2) Iterate through all characters of given string, do following
a) If current character is non-space, then put this character at index 'count' and increment 'count'
3) Finally, put '\0' at index 'count'

Try solving now

2. Remove all occurrences of a character in a string

Easy
0/40
Asked in companies
Livekeeping (An IndiaMART Company)Hewlett Packard EnterpriseCredit Suisse

For a given a string(str) and a character X, write a function to remove all the occurrences of X from the given string.

The input string will remain unchanged if the given character(X) doesn't exist in the input string.

Problem approach

The idea is to maintain an index of the resultant string. 
Traverse the original string. Keep copying the characters to the resultant string if the character is not equal to the given character.
Time Complexity : O(n) where n is length of input string. 
Auxiliary Space : O(1)

Try solving now

3. OOPS Question

What are the types of polymorphism?

Problem approach

Polymorphism is of two types :
1. Compile Time Polymorphism : 
Invokes the overloaded functions by matching the number and type of arguments. The information is present during compile-time. This means the C++ compiler will select the right function at compile time. It is achieved through function overloading and operator overloading.
2. Run Time Polymorphism : 
This happens when an object’s method is called during runtime rather than during compile time. Runtime polymorphism is achieved through function overriding. The function to be called is established during runtime.

4. OOPS Question

What is a virtual function?

Problem approach

A C++ virtual function is a member function in the base class that you redefine in a derived class. It is declared using the virtual keyword. It is used to tell the compiler to perform dynamic linkage or late binding on the function. A 'virtual' is a keyword preceding the normal declaration of a function. When the function is made virtual, C++ determines which function is to be invoked at the runtime based on the type of the object pointed by the base class pointer.

5. OOPS Question

What is data abstraction?

Problem approach

Data abstraction refers to providing only essential information to the outside world and hiding their background details, i.e., to represent the needed information in program without presenting the details. Data abstraction is a programming (and design) technique that relies on the separation of interface and implementation.
In C++, classes provides great level of data abstraction. They provide sufficient public methods to the outside world to play with the functionality of the object and to manipulate object data, i.e., state without actually knowing how class has been implemented internally. In C++, we use classes to define our own abstract data types (ADT). You can use the cout object of class ostream to stream data to standard output.

02
Round
Easy
Face to Face
Duration60 minutes
Interview date3 Jun 2015
Coding problem4

Technical Interview round with questions on OS, Networking and OOPS.

1. C Question

What are near, far and huge pointers?

Problem approach

Near pointer is used to store 16 bit addresses means within current segment on a 16 bit machine. The limitation is that we can only access 64kb of data at a time.

A far pointer is typically 32 bit that can access memory outside current segment. To use this, compiler allocates a segment register to store segment address, then another register to store offset within current segment.

Like far pointer, huge pointer is also typically 32 bit and can access outside segment. In case of far pointers, a segment is fixed. In far pointer, the segment part cannot be modified, but in Huge it can be

2. Operating System Question

What is Paging?

Problem approach

Paging is a memory management scheme that eliminates the need for contiguous allocation of physical memory. This scheme permits the physical address space of a process to be non – contiguous.

Logical Address or Virtual Address (represented in bits): An address generated by the CPU
Logical Address Space or Virtual Address Space( represented in words or bytes): The set of all logical addresses generated by a program
Physical Address (represented in bits): An address actually available on memory unit
Physical Address Space (represented in words or bytes): The set of all physical addresses corresponding to the logical addresses

3. Operating System Question

What is mutual exclusion?

Problem approach

During concurrent execution of processes, processes need to enter the critical section (or the section of the program shared across processes) at times for execution. It might so happen that because of the execution of multiple processes at once, the values stored in the critical section become inconsistent. In other words, the values depend on the sequence of execution of instructions – also known as a race condition. The primary task of process synchronization is to get rid of race conditions while executing the critical section. 
This is primarily achieved through mutual exclusion. 
Mutual exclusion is a property of process synchronization which states that “no two processes can exist in the critical section at any given point of time”. The term was first coined by Dijkstra. Any process synchronization technique being used must satisfy the property of mutual exclusion, without which it would not be possible to get rid of a race condition.

4. Computer Network Question

Explain the different OSI Layers.

Problem approach

Physical Layer
The lowest layer of the OSI Model is concerned with electrically or optically transmitting raw unstructured data bits across the network from the physical layer of the sending device to the physical layer of the receiving device. It can include specifications such as voltages, pin layout, cabling, and radio frequencies.

Data Link Layer
At the data link layer, directly connected nodes are used to perform node-to-node data transfer where data is packaged into frames. The data link layer also corrects errors that may have occurred at the physical layer.
The data link layer encompasses two sub-layers of its own. The first, media access control (MAC), provides flow control and multiplexing for device transmissions over a network. The second, the logical link control (LLC), provides flow and error control over the physical medium as well as identifies line protocols.

Network Layer
The network layer is responsible for receiving frames from the data link layer, and delivering them to their intended destinations among based on the addresses contained inside the frame. The network layer finds the destination by using logical addresses, such as IP (internet protocol). At this layer, routers are a crucial component used to quite literally route information where it needs to go between networks.

Transport Layer
The transport layer manages the delivery and error checking of data packets. It regulates the size, sequencing, and ultimately the transfer of data between systems and hosts. One of the most common examples of the transport layer is TCP or the Transmission Control Protocol.

Session Layer
The session layer controls the conversations between different computers. A session or connection between machines is set up, managed, and terminated at layer 5. Session layer services also include authentication and reconnections.

Presentation Layer
The presentation layer formats or translates data for the application layer based on the syntax or semantics that the application accepts. Because of this, it at times also called the syntax layer. This layer can also handle the encryption and decryption required by the application layer.

Application Layer
At this layer, both the end user and the application layer interact directly with the software application. This layer sees network services provided to end-user applications such as a web browser or Office 365. The application layer identifies communication partners, resource availability, and synchronizes communication.

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 the purpose of the return keyword?

Choose another skill to practice
Similar interview experiences
Software Engineer
2 rounds | 6 problems
Interviewed by Aricent Technologies (Holdings) Limited
826 views
0 comments
0 upvotes
Software Engineer
3 rounds | 6 problems
Interviewed by Aricent Technologies (Holdings) Limited
907 views
0 comments
0 upvotes
Software Engineer
2 rounds | 8 problems
Interviewed by Aricent Technologies (Holdings) Limited
772 views
0 comments
0 upvotes
Software Engineer
2 rounds | 14 problems
Interviewed by Aricent Technologies (Holdings) Limited
0 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
Software Engineer
3 rounds | 7 problems
Interviewed by Optum
7923 views
1 comments
0 upvotes
company logo
Software Engineer
5 rounds | 5 problems
Interviewed by Microsoft
10070 views
1 comments
0 upvotes
company logo
Software Engineer
2 rounds | 4 problems
Interviewed by Amazon
4395 views
1 comments
0 upvotes