i
Mphasis
Filter interviews by
I applied via Referral and was interviewed before Jan 2024. There was 1 interview round.
Joins in SQL are used to combine rows from two or more tables based on a related column between them.
Joins are used to retrieve data from multiple tables based on a related column.
Common types of joins include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN.
Example: SELECT * FROM table1 INNER JOIN table2 ON table1.column = table2.column;
Some built-in functions in SQL include AVG, COUNT, MAX, MIN, SUM, and CONCAT.
AVG: Calculates the average value of a numeric column
COUNT: Counts the number of rows in a result set
MAX: Returns the maximum value in a column
MIN: Returns the minimum value in a column
SUM: Calculates the sum of values in a column
CONCAT: Concatenates two or more strings together
Types of cursors in database management systems include implicit, explicit, and parameterized cursors.
Implicit cursors are automatically created by the database when a SQL statement is executed.
Explicit cursors are defined by the programmer and give more control over the result set.
Parameterized cursors allow for dynamic SQL statements with parameters.
Examples: SELECT statement using implicit cursor, DECLARE, OPEN, FET...
Procedures are used to perform an action, while functions return a value.
Procedures do not return a value, while functions do.
Functions can be used in SQL queries, while procedures cannot.
Functions can be called from within SQL statements, while procedures cannot.
Procedures can have OUT parameters to return multiple values, while functions can only return a single value.
Use a subquery to find the third highest salary in a table.
Use the RANK() function to assign a rank to each salary in descending order.
Filter the results to only include rows with a rank of 3.
Consider handling ties in salaries appropriately.
A package is a collection of related procedures, functions, variables, and other PL/SQL constructs.
Packages help organize and encapsulate code for easier maintenance and reuse.
They can contain both public and private elements.
Packages can be used to group related functionality together, improving code modularity.
Example: CREATE PACKAGE my_package AS ... END my_package;
Resolved a critical bug causing data loss and implemented a new feature for better user experience.
Identified root cause of data loss bug by analyzing database queries and logs
Collaborated with cross-functional teams to prioritize and implement a fix
Designed and implemented a new feature based on user feedback to enhance usability
Different types of indexes include B-tree, Bitmap, Function-based, and Reverse key indexes.
B-tree indexes are the most common type and are suitable for most indexing needs.
Bitmap indexes are used for columns with low cardinality, such as gender or status columns.
Function-based indexes are created based on expressions or functions applied to columns.
Reverse key indexes store keys in reverse order to reduce contention in
Analytical functions in SQL are used to perform calculations across a set of rows related to the current row.
Analytical functions operate on a group of rows and return a single result for each row.
They can be used to calculate running totals, moving averages, rank, percentiles, etc.
Examples include ROW_NUMBER(), RANK(), DENSE_RANK(), SUM() OVER(), AVG() OVER().
Aggregate functions in SQL are functions that operate on a set of values and return a single value as output.
Aggregate functions include functions like SUM, AVG, COUNT, MIN, and MAX.
They are used with the GROUP BY clause to perform calculations on groups of rows.
Examples: SELECT SUM(salary) FROM employees; SELECT AVG(age) FROM students GROUP BY class;
I identified and optimized slow-performing SQL queries by analyzing execution plans and indexing strategies.
Identified slow-performing SQL queries using tools like Oracle SQL Developer or TOAD.
Analyzed execution plans to understand query performance bottlenecks.
Optimized queries by rewriting SQL code, adding indexes, or restructuring data.
Used tools like Explain Plan or SQL Tuning Advisor to improve query performance.
R...
Data modeling is the process of creating a visual representation of data structures and relationships within a database.
Data modeling helps in organizing and understanding complex data systems.
It involves identifying entities, attributes, and relationships between them.
Examples include ER diagrams, UML diagrams, and relational data models.
I conducted thorough analysis by reviewing code, logs, and discussing with team members.
Reviewed code to identify potential issues
Analyzed logs for error messages and patterns
Discussed with team members to gather insights and perspectives
Used debugging tools to trace the root cause
A trigger in database management is a special type of stored procedure that is automatically executed when certain events occur in a database.
Triggers can be used to enforce business rules, maintain referential integrity, and automate repetitive tasks.
There are two main types of triggers: row-level triggers and statement-level triggers.
Row-level triggers are fired for each row affected by a triggering statement, while ...
I appeared for an interview in Feb 2025.
Cucumber is a testing framework that supports Behavior Driven Development (BDD) using plain language for writing test cases.
Cucumber allows writing test cases in Gherkin language, which is human-readable.
It promotes collaboration between developers, testers, and non-technical stakeholders.
Example of a Gherkin scenario: 'Given the user is on the login page, When they enter valid credentials, Then they should be redirect...
Interfaces define contracts for classes, while abstraction hides implementation details, focusing on essential features.
An interface can contain method signatures but no implementation, e.g., 'public interface Animal { void makeSound(); }'
Abstraction can be achieved using abstract classes, which can have both abstract methods and concrete methods, e.g., 'abstract class Shape { abstract void draw(); }'
A class can implem...
In Java, exceptions are handled using try-catch blocks, allowing graceful error management and maintaining program flow.
Use try-catch blocks to catch exceptions: try { // code that may throw an exception } catch (ExceptionType e) { // handle exception }
Use finally block for cleanup: try { // code } catch (Exception e) { // handle exception } finally { // cleanup code }
Throw exceptions using '...
What people are saying about Mphasis
I appeared for an interview in Feb 2025, where I was asked the following questions.
Enhancing Angular app performance involves optimization techniques like lazy loading, change detection strategies, and efficient data handling.
Use Lazy Loading: Load feature modules only when needed to reduce initial load time. Example: Implementing lazy loading in the routing module.
Optimize Change Detection: Use OnPush strategy to limit checks to only when inputs change. Example: Using ChangeDetectionStrategy.OnPush ...
Data binding in Angular connects component data to the template, enabling dynamic updates and interaction.
1. **Interpolation**: Use double curly braces to bind component properties to the template. Example: `{{ title }}`.
2. **Property Binding**: Bind DOM properties to component properties using square brackets. Example: `<img [src]='imageUrl'>`.
3. **Event Binding**: Use parentheses to listen to events and call co...
Angular lifecycle events manage component states from creation to destruction, enabling developers to hook into key moments.
ngOnInit: Called once after the first ngOnChanges. Ideal for initialization logic. Example: Fetching data from a service.
ngOnChanges: Invoked before ngOnInit and whenever one or more data-bound input properties change. Example: Reacting to input changes.
ngDoCheck: Called during every change detect...
Angular handles events using event binding, directives, and services for user interactions and component communication.
Event Binding: Use parentheses to bind events in templates, e.g., <button (click)='onClick()'>Click Me</button>.
Event Object: Access event properties by passing $event, e.g., <input (input)='onInput($event)'>.
Custom Events: Use EventEmitter to create and emit custom events from child ...
Follow best practices in Angular to enhance code quality, maintainability, and performance.
Use Angular CLI for project setup and management to ensure consistency.
Organize code into modules for better separation of concerns.
Implement lazy loading for feature modules to improve application performance.
Utilize services for data management and business logic, keeping components lean.
Follow the Angular style guide for namin...
Dependency injection in Angular is a design pattern that allows a class to receive its dependencies from external sources rather than creating them itself.
Promotes code reusability and modularity by decoupling components.
Angular's injector is responsible for creating and managing dependencies.
Services can be injected into components, directives, and other services.
Example: A logging service can be injected into multipl...
ngShow toggles visibility with CSS, while ngIf adds/removes elements from the DOM based on a condition.
ngShow: Uses CSS display property to show/hide elements without removing them from the DOM.
Example: <div ng-show='isVisible'>Content</div> - Content remains in DOM but hidden if isVisible is false.
ngIf: Conditionally includes or excludes elements from the DOM based on the expression's truthiness.
Example: &...
call, apply, and bind are methods to set the context of 'this' in JavaScript functions.
call: Invokes a function with a specified 'this' value and arguments provided individually. Example: func.call(obj, arg1, arg2);
apply: Similar to call, but arguments are provided as an array. Example: func.apply(obj, [arg1, arg2]);
bind: Returns a new function with a specified 'this' value, allowing for later invocation. Example: cons
Map, filter, and reduce are array methods in JavaScript for transforming and processing data.
Map: Creates a new array by applying a function to each element. Example: [1, 2, 3].map(x => x * 2) results in [2, 4, 6].
Filter: Creates a new array with elements that pass a test. Example: [1, 2, 3].filter(x => x > 1) results in [2, 3].
Reduce: Reduces an array to a single value by applying a function. Example: [1, 2, ...
Different looping constructs in programming serve unique purposes for iterating over collections.
for: A traditional loop that iterates over a range of numbers. Example: for (let i = 0; i < 5; i++) { console.log(i); }
for each: A method to iterate over elements in an array or collection. Example: array.forEach(item => console.log(item));
for of: A modern loop for iterating over iterable objects like arrays, strings,...
Mphasis interview questions for popular designations
Aptitude, english, coding,mcqs
Group discussion on few topics
Get interview-ready with Top Mphasis Interview Questions
Agile methodology is a project management approach that emphasizes flexibility, collaboration, and incremental progress.
Agile focuses on delivering small, incremental releases and adapting to change quickly.
It promotes collaboration between cross-functional teams and encourages frequent communication.
Key principles include customer satisfaction, responding to change, and delivering working software.
Common agile framewo...
Waterfall model is a linear sequential software development process where progress flows in one direction like a waterfall.
Involves distinct phases such as requirements, design, implementation, testing, and maintenance.
Each phase must be completed before moving on to the next.
Changes are difficult to implement once a phase is completed.
Example: Traditional software development approach.
Example: Construction projects.
I appeared for an interview in Dec 2024.
Optimisation in PySpark involves improving performance and efficiency of Spark jobs.
Use partitioning to distribute data evenly across nodes
Avoid shuffling data between nodes as much as possible
Use broadcast variables for small lookup tables
Cache intermediate results to avoid recomputation
Optimize transformations and actions for better performance
Null handling in Spark involves handling missing or null values in data processing.
Use functions like coalesce, na.fill, na.drop to handle null values
Consider using when and otherwise functions for conditional null handling
Be cautious of potential null pointer exceptions when working with null values
Airflow operators are used to define the tasks to be executed in a workflow.
Operators are classes that define the logic to execute a task in Airflow.
There are various types of operators such as BashOperator, PythonOperator, and more.
Operators can be customized to suit specific task requirements.
Operators can be chained together to create complex workflows.
Example: BashOperator executes a bash command, PythonOperator ru
SQL coding for calculating average rolling, lead, and lag functions.
Use window functions like ROWS BETWEEN and ORDER BY for calculating rolling averages.
Use LEAD and LAG functions to access data from previous or next rows.
Example: SELECT col1, AVG(col2) OVER (ORDER BY col1 ROWS BETWEEN 3 PRECEDING AND CURRENT ROW) AS rolling_avg FROM table_name;
Use Apache Sqoop to move 10 tables from MySQL to Google Cloud Storage.
Use Apache Sqoop to import data from MySQL to HDFS
Use Google Cloud Storage connector for Hadoop to move data from HDFS to GCS
Create a script to automate the process for all 10 tables
I appeared for an interview in Jan 2025.
I applied via Naukri.com and was interviewed in Oct 2024. There were 2 interview rounds.
10 min, simple question on programming skills
I have used the asynchronous messaging pattern for Microservice communication.
Implemented messaging queues like RabbitMQ or Kafka for decoupled communication
Used message brokers to enable communication between Microservices
Leveraged event-driven architecture for real-time updates and scalability
I have used Application Insights for monitoring and analyzing the performance of .NET applications.
Used Application Insights to track application performance metrics
Analyzed telemetry data to identify performance bottlenecks
Set up alerts and notifications for critical issues
Integrated Application Insights with Azure DevOps for continuous monitoring
We use in-memory caching technique in our project to improve performance and reduce database load.
In-memory caching is used to store frequently accessed data in memory for quick retrieval
Helps reduce database load and improve application performance
Examples: using MemoryCache in .NET, Redis caching, caching frequently accessed data like user profiles or product information
Yes, API Gateways are used in Microservices to manage and secure communication between services.
API Gateways act as a single entry point for clients to access multiple microservices
They handle authentication, authorization, rate limiting, logging, and monitoring
Examples of API Gateways include Kong, Apigee, and AWS API Gateway
We are using OAuth 2.0 for single sign on in the project.
OAuth 2.0 is a widely used authorization framework that enables a third-party application to obtain limited access to an HTTP service.
It allows users to log in once and access multiple applications without having to log in again.
OAuth 2.0 provides secure delegated access to resources without sharing user credentials.
JWT token is a JSON Web Token used for secure transmission of information between parties.
JWT token is a compact and self-contained way to transmit information between parties.
It is digitally signed to verify its authenticity and integrity.
JWT tokens consist of three parts: header, payload, and signature.
They are commonly used for authentication and information exchange in web applications.
Example: JWT tokens are often
Exception handling and filters in .NET Core Web API
Use try-catch blocks to handle exceptions in the code
Implement global exception handling middleware to catch unhandled exceptions
Use filters like [Authorize] for authentication and [ValidateAntiForgeryToken] for CSRF protection
Create custom exception filters by implementing IExceptionFilter interface
I applied via Campus Placement and was interviewed in Oct 2024. There were 4 interview rounds.
Online test -math & quants,verbal,puzzle,computer programming,logical
One program I know is a simple calculator program written in Python.
The program takes user input for two numbers and an operator (+, -, *, /).
It then performs the operation and displays the result.
Example: input 5, +, 3 -> output 8
Some of the top questions asked at the Mphasis interview -
The duration of Mphasis interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 675 interviews
Interview experience
based on 8.4k reviews
Rating in categories
Software Engineer
6.4k
salaries
| ₹2 L/yr - ₹9.5 L/yr |
Senior Software Engineer
5.7k
salaries
| ₹6 L/yr - ₹23.5 L/yr |
Associate Software Engineer
4.7k
salaries
| ₹2 L/yr - ₹6 L/yr |
Module Lead
2.4k
salaries
| ₹9.5 L/yr - ₹35 L/yr |
Transaction Processing Officer
2.3k
salaries
| ₹1 L/yr - ₹4.5 L/yr |
Cognizant
Wipro
Accenture
TCS