Mphasis pvt limited interview experience Real time questions & tips from candidates to crack your interview

Senior Software Engineer

Mphasis pvt limited
upvote
share-icon
3 rounds | 13 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: Referral
Eligibility: Above 2 years of experience
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
Face to Face
Duration60 Minutes
Interview date21 Aug 2019
Coding problem5

This round focused more on the Operating Systems part followed by some questions from Microservices Architecture.

1. OS Question

What is a bootstrap program in OS?

Problem approach

It is generally a program that initializes OS during startup i.e., first code that is executed whenever computer system startups. OS is loaded through a bootstrapping process or program commonly known as booting. Overall OS only depends on the bootstrap program to perform and work correctly. It is fully stored in boot blocks at a fixed location on the disk. It also locates the kernel and loads it into the main memory after which the program starts its execution.

2. OS Question

What is Memory Protection in OS ?

Problem approach

Answer :
1) Memory protection is a strategy that makes it possible to manage the amount of access rights that are granted to
the memory found on a computer hard drive.

2) The main purpose of this type of protection is to minimize the potential for some type of storage violation that
would harm the data contained in the memory, or damage a portion of the memory capacity of the hard drive.

3) One of the main functions of memory protection is the prevention of any application from making use of memory
that the operating system has not specifically allocated to that application.

4) This prevents applications from seizing control of an inordinate amount of memory and possibly causing damage
that negatively impacts other applications that are currently in use, or even creating a loss of data that is saved on the
hard drive.

5) In many operating systems, this is managed by segmenting the memory for use by all open applications, ensuring
that each has enough to operate properly without creating issues with the other running applications.

3. OS Question

What are the four necessary and sufficient conditions behind the deadlock?

Problem approach

These are the 4 conditions:

1) Mutual Exclusion Condition: It specifies that the resources involved are non-sharable.

2) Hold and Wait Condition: It specifies that there must be a process that is holding a resource already allocated to it while waiting for additional resource that are currently being held by other processes.

3) No-Preemptive Condition: Resources cannot be taken away while they are being used by processes.

4) Circular Wait Condition: It is an explanation of the second condition. It specifies that the processes in the system form a circular list or a chain where each process in the chain is waiting for a resource held by next process in the chain.

4. Microservices Question

What are the fundamental characteristics of a Microservices Design?

Problem approach

1) Services split up and organized around business functionality.
2) Separate modules handled and owned by different development teams.
3) Decentralized Framework.
4) Maintenance of respective modules by respective development teams.
5) Separate modules may be maintained by different databases.
6) Modules in a Microservice Architecture are separately deployable. They can be updated, enhanced, or deleted without disrupting the entire architecture.
7) Real-time monitoring of the application.

5. Microservices Question

What are the different strategies of Microservices Deployment?

Problem approach

1) Multiple Service Instance per Host: Run single or multiple service instances of the application on single/multiple physical/virtual hosts.

2) Service Instance per Host: Run a service instance per host.

3) Service Instance per Container: Run each service instance in its respective container.

4) Serverless Deployment: Package the service as a ZIP file and upload it to the Lambda function. The Lambda function is a stateless service that automatically runs enough micro-services to handle all requests.

02
Round
Medium
Face to Face
Duration60 Minutes
Interview date21 Aug 2019
Coding problem6

This round was preety much mixed and contained questions from DBMS, Java and more importantly Spring Boot.

1. DBMS Question

Why is normalization needed in a database?

Problem approach

The term "normalization" refers to the process of analyzing relation schemas based on their functional dependencies.
Normalization is the technique of splitting up data into numerous tables to reduce redundancy.

The advantages of normalization are:

1) Standardization eliminates the copy information, allowing a smaller database to be maintained. As a result, the
size of the database is reduced in general.
2) Better execution is assured, which is related to the previous point. As the size of information bases shrinks, the
time it takes to process it becomes shorter and more constrained, enhancing reaction time and speed.
3) Narrower tables may be possible as standardized tables are altered and feature fewer segments, allowing for more
data items per page.
4) With fewer files per table, support assignments are completed faster (file modifies).

2. DBMS Question

What are views in SQL?

Problem approach

Answer :
1) Views in SQL are kind of virtual tables.
2) A view also has rows and columns as they are in a real table in the database.
3) We can create a view by selecting fields from one or more tables present in the database.
4) A View can either have all the rows of a table or specific rows based on certain condition.

3. SpringBoot Question

What is dependency Injection?

Problem approach

The process of injecting dependent bean objects into target bean objects is called dependency injection.

1) Setter Injection: The IOC container will inject the dependent bean object into the target bean object by calling the
setter method.
2) Constructor Injection: The IOC container will inject the dependent bean object into the target bean object by calling
the target bean constructor.
3) Field Injection: The IOC container will inject the dependent bean object into the target bean object by Reflection
API.

4. SpringBoot Question

What is the use of Profiles in spring boot?

Problem approach

While developing the application we deal with multiple environments such as dev, QA, Prod, and each environment requires a different configuration. For eg., we might be using an embedded H2 database for dev but for prod, we might have proprietary Oracle or DB2. Even if DBMS is the same across the environment, the URLs will be different.

To make this easy and clean, Spring has the provision of Profiles to keep the separate configuration of environments.

5. Java Question

What are the various access specifiers in Java?

Problem approach

In Java, access specifiers are the keywords which are used to define the access scope of the method, class, or a variable. In Java, there are four access specifiers given below.

1) Public : The classes, methods, or variables which are defined as public, can be accessed by any class or method.

2) Protected : Protected can be accessed by the class of the same package, or by the sub-class of this class, or within the same class.

3) Default : Default are accessible within the package only. By default, all the classes, methods, and variables are of default scope.

4) Private : The private class, methods, or variables defined as private can be accessed within the class only.

6. Java Question

What is JIT compiler?

Problem approach

1) JIT stands for Just-In-Time and it is used for improving the performance during run time. It does the task of
compiling parts of byte code having similar functionality at the same time thereby reducing the amount of compilation
time for the code to run.

2) The compiler is nothing but a translator of source code to machine-executable code.
Working of the JIT Compiler :
1) First, the Java source code (.java) conversion to byte code (.class) occurs with the help of the javac compiler.
2) Then, the .class files are loaded at run time by JVM and with the help of an interpreter, these are converted to
machine understandable code.


3) JIT compiler is a part of JVM. When the JIT compiler is enabled, the JVM analyzes the method calls in the .class
files and compiles them to get more efficient and native code. It also ensures that the prioritized method calls are
optimized.

4) Once the above step is done, the JVM executes the optimized code directly instead of interpreting the code again.
This increases the performance and speed of the execution.

03
Round
Easy
HR Round
Duration30 Minutes
Interview date21 Aug 2019
Coding problem2

This is a cultural fitment testing round .HR was very frank and asked standard questions. Then we discussed about my role.

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.

2. Basic HR Question

Why are you looking for a job change?

Problem approach

General Tip : For an experienced professional seeking a change, this is a common question. The easiest method to
respond to this question is to state that you are leaving your current work in order to advance your career. Make sure
you don't criticize or speak poorly about the company where you now work.

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
Senior Software Engineer
3 rounds | 9 problems
Interviewed by Mphasis pvt limited
2416 views
0 comments
0 upvotes
Senior Software Engineer
3 rounds | 12 problems
Interviewed by Mphasis pvt limited
2518 views
0 comments
0 upvotes
Senior Software Engineer
1 rounds | 2 problems
Interviewed by Mphasis pvt limited
2000 views
0 comments
0 upvotes
SDE - 1
4 rounds | 5 problems
Interviewed by Mphasis pvt limited
1227 views
0 comments
0 upvotes
Companies with similar interview experiences
company logo
Senior Software Engineer
1 rounds | 6 problems
Interviewed by Arcesium
3792 views
0 comments
0 upvotes
company logo
Senior Software Engineer
3 rounds | 3 problems
Interviewed by Ernst & Young (EY)
5079 views
0 comments
0 upvotes
company logo
Senior Software Engineer
3 rounds | 3 problems
Interviewed by HCL Technologies
3077 views
3 comments
0 upvotes