i
Publicis
Sapient
Work with us
Filter interviews by
Sorting a hashmap by its values involves converting it to a list and using a sorting algorithm.
Convert the hashmap to a list of entries: List<Map.Entry<K, V>> entryList = new ArrayList<>(hashMap.entrySet());
Use a comparator to sort the list based on values: Collections.sort(entryList, Comparator.comparing(Map.Entry::getValue));
If needed, convert the sorted list back to a hashmap: LinkedHashMap<...
Page Factory is a design pattern in Selenium that enhances test automation by initializing web elements efficiently.
Lazy Initialization: Page Factory initializes web elements only when they are accessed, improving performance and reducing memory usage.
Annotations: It uses annotations like @FindBy to locate elements, making the code cleaner and more readable. Example: @FindBy(id = "username")
Separation of Concerns:...
Object-oriented programming concepts enhance code organization, reusability, and maintainability in software testing frameworks.
Encapsulation: By encapsulating test data and methods within classes, I ensured that test cases were self-contained and easy to manage.
Inheritance: I created a base test class that contained common setup and teardown methods, allowing derived test classes to inherit these functionalities,...
To sort an integer array and find the third highest number, use sorting algorithms and indexing techniques.
Sorting the Array: Use algorithms like QuickSort or MergeSort to arrange the array in ascending order. Example: [5, 2, 9, 1] becomes [1, 2, 5, 9].
Finding the Third Highest: After sorting, access the third last element. Example: In [1, 2, 5, 9], the third highest is 2.
Handling Duplicates: Ensure unique values ...
Abstract classes are incomplete classes in OOP that cannot be instantiated and are meant to be subclassed.
Definition: An abstract class serves as a blueprint for other classes, containing abstract methods that must be implemented by subclasses.
Cannot be Instantiated: You cannot create an instance of an abstract class directly; it must be subclassed first.
Abstract Methods: These are methods declared in an abstract ...
Method overloading allows multiple methods with the same name but different parameters; overriding replaces a superclass method in a subclass.
Method Overloading: Achieved by defining multiple methods with the same name but different parameter types or counts. Example: `void add(int a, int b)` and `void add(double a, double b)`.
Method Overriding: Occurs when a subclass provides a specific implementation of a method...
This method counts the number of alphabetic characters in a given string, ignoring spaces and punctuation.
Iterate through each character in the string and check if it is an alphabet using isalpha() method.
Maintain a counter that increments for each alphabetic character found.
Return the final count after checking all characters.
Example: For the string 'Hello, World!', the count would be 10.
This method counts the number of vowels in a given string, helping to analyze text for vowel frequency.
Define a method that takes a string as input.
Initialize a counter to zero to keep track of the number of vowels.
Iterate through each character in the string and check if it is a vowel (a, e, i, o, u).
If a vowel is found, increment the counter.
Return the final count of vowels after the loop.
Effective conflict management involves communication, empathy, and problem-solving to resolve disagreements constructively.
Active Listening: I ensure all parties feel heard by summarizing their points before responding. For example, during a team project, I mediated a disagreement by allowing each member to express their concerns fully.
Empathy: I try to understand the perspectives of others. In a previous role, I ...
In my previous role, I streamlined a process that significantly improved team efficiency and reduced project turnaround time.
Identified Bottlenecks: I analyzed our project workflow and discovered that manual data entry was causing delays.
Implemented Automation: I introduced an automated tool that reduced data entry time by 50%, allowing the team to focus on more critical tasks.
Enhanced Collaboration: By facilitati...
C++ is an extension of C with object-oriented programming features.
C++ supports classes and objects while C does not.
C++ has better support for polymorphism and inheritance.
C++ has a standard template library (STL) which C does not have.
C++ allows function overloading while C does not.
C++ has exception handling while C does not.
For loop is used for iterating over a sequence while while loop is used for iterating until a condition is met.
For loop is used when the number of iterations is known beforehand
While loop is used when the number of iterations is not known beforehand
For loop is faster than while loop for iterating over a sequence
While loop is useful for iterating until a specific condition is met
For loop can be used with range() functio...
To reverse a string without using any looping and inbuilt functions, we can use recursion.
Create a function that takes a string as input.
If the length of the string is 0 or 1, return the string.
Otherwise, call the function recursively with the substring starting from the second character and concatenate the first character at the end.
Return the reversed string.
Example: reverseString('hello') returns 'olleh'.
A priority queue can be implemented using a single queue or multiple queues.
One approach is to use a single queue and assign priorities to elements using a separate data structure.
Another approach is to use multiple queues, each representing a different priority level.
For example, if there are three priority levels, three queues can be used to implement the priority queue.
An array of objects can be used to implement a heterogeneous array.
Each element in the array can be an object that represents a different data type.
The objects can have different properties and methods based on their respective data types.
For example, an element can be an object representing a string with a 'value' property and a 'length' method.
Developed a web-based inventory management system for a retail company.
Used HTML, CSS, and JavaScript for the front-end development.
Implemented a RESTful API using Node.js and Express for the back-end.
Utilized a MySQL database to store and manage inventory data.
Implemented features like product search, order management, and reporting.
Ensured data security and user authentication using encryption and JWT.
Collaborated wi...
The missing rupee is not actually missing. The calculation is misleading and does not account for the total amount paid.
The initial amount paid by each person was Rs.10, totaling Rs.30.
The owner gave them a discount of Rs.5, so they paid Rs.25 in total.
The broker took Rs.2, leaving them with Rs.23.
When the broker returned Rs.1 to each person, they each received Rs.1 back, totaling Rs.3.
So, the total amount paid by the ...
I currently manage financial analysis, budgeting, and forecasting for a mid-sized company, focusing on strategic growth.
Conduct detailed financial analysis to support decision-making, such as evaluating potential investments.
Prepare and present monthly financial reports to senior management, highlighting key performance indicators.
Develop and maintain financial models to forecast revenue and expenses, aiding in strateg...
I take pride in delivering insightful analyses that drive strategic decisions and contribute to the team's success.
Achieving accurate financial forecasts that help the company allocate resources effectively.
Developing a comprehensive financial model that was used to secure a major investment.
Collaborating with cross-functional teams to identify cost-saving opportunities, resulting in a 15% reduction in expenses.
Present...
My strength is analytical thinking, while my weakness is overanalyzing situations, which I am actively working to improve.
Strength: Strong analytical skills - I excel at breaking down complex financial data to identify trends and insights.
Example: In my previous role, I developed a financial model that improved forecasting accuracy by 20%.
Weakness: Tendency to overanalyze - Sometimes I spend too much time evaluating op...
Successfully led a financial analysis project that improved budgeting accuracy by 20%, enhancing decision-making processes.
Implemented a new forecasting model that reduced budget variances by 15%.
Collaborated with cross-functional teams to streamline reporting processes, saving 10 hours per month.
Presented findings to senior management, leading to a strategic investment decision that increased revenue by 25%.
I prioritize tasks by assessing urgency, impact, and deadlines, ensuring efficient time management and focus on key objectives.
Use a priority matrix to categorize tasks by urgency and importance, helping to focus on high-impact activities.
Set clear deadlines for each task, allowing me to allocate time effectively and avoid last-minute rushes.
Regularly review and adjust priorities based on changing circumstances or new ...
I bring a unique blend of analytical skills, financial expertise, and a proactive approach to drive impactful results for your team.
Strong analytical skills: I have experience in financial modeling and forecasting, which helped my previous employer increase revenue by 15%.
Proven track record: In my last role, I successfully identified cost-saving opportunities that resulted in a 10% reduction in operational expenses.
Ef...
posted on 29 Jun 2025
I appeared for an interview in May 2025, where I was asked the following questions.
I want to join Sapient to leverage my skills in process engineering and contribute to innovative solutions in a dynamic environment.
Sapient's commitment to innovation aligns with my passion for developing cutting-edge engineering solutions.
The collaborative culture at Sapient excites me, as I thrive in team environments where diverse ideas lead to impactful results.
I admire Sapient's focus on sustainability and efficie...
I have experience in process engineering through internships and projects focused on optimizing manufacturing processes.
Internship at XYZ Corp: Improved production efficiency by 15% through process mapping and analysis.
University project: Designed a process flow for a bioreactor system, enhancing yield by 20%.
Collaboration with cross-functional teams to implement lean manufacturing principles, reducing waste.
The aptitude test lasts 30 minutes and focuses on topics relevant to data engineering, including Spark, SQL, Azure, and PySpark.
The coding test is a one-hour examination on PySpark.
Cache() and Persist() are both used for caching RDDs in Apache Spark, but Persist() allows for more customization.
Cache() is a shorthand for Persist(StorageLevel.MEMORY_ONLY)
Persist() allows for specifying different storage levels like MEMORY_ONLY, MEMORY_AND_DISK, etc.
Persist() also allows for specifying serialization formats like Java serialization, Kryo serialization, etc.
Spark Submit command is used to submit Spark applications to a cluster.
Spark Submit command is used to launch applications on a Spark cluster.
It allows users to specify application parameters like main class, jars, and arguments.
Users can also configure properties like memory allocation and number of executors.
Example: spark-submit --class com.example.Main --master yarn --deploy-mode cluster myApp.jar
Window functions in SQL are used to perform calculations across a set of table rows related to the current row.
Window functions operate on a set of rows related to the current row
They can be used to calculate running totals, ranks, and averages
Examples include ROW_NUMBER(), RANK(), and SUM() OVER()
The daily responsibilities of a Senior Data Engineer involve designing, implementing, and maintaining data pipelines, optimizing data workflows, and collaborating with cross-functional teams.
Designing and implementing scalable data pipelines to collect, process, and store data
Optimizing data workflows for efficiency and performance
Collaborating with data scientists, analysts, and other stakeholders to understand data r...
Our work culture is collaborative, innovative, and focused on continuous learning and growth.
Collaborative team environment where everyone's input is valued
Encouragement of innovation and thinking outside the box
Emphasis on continuous learning and professional development
Open communication and feedback culture
Supportive and inclusive atmosphere
I applied via Approached by Company and was interviewed in Oct 2024. There were 4 interview rounds.
Assessment via link MCQ
I appeared for an interview in Dec 2024, where I was asked the following questions.
Java collections are evolving with new features for better performance, usability, and integration with modern programming paradigms.
Introduction of new collection types like Stream API for functional-style operations.
Improvements in performance with concurrent collections like ConcurrentHashMap.
Enhanced support for immutability with List.of(), Set.of(), and Map.of() methods.
Integration with reactive programming throug...
The project architecture follows a microservices pattern, utilizing Spring Boot for backend services and React for the frontend.
Microservices architecture allows for independent deployment and scaling of services.
Each service is built using Spring Boot, which simplifies the development of RESTful APIs.
The frontend is developed using React, providing a dynamic user interface.
Services communicate via REST APIs, ensuring ...
Developed a web application for tracking employee attendance and performance
Implemented user authentication and authorization using Spring Security
Utilized Hibernate for database interaction and data persistence
Designed and developed RESTful APIs for frontend integration
Used AngularJS for frontend development to create interactive user interfaces
I applied via Naukri.com and was interviewed in Nov 2024. There were 4 interview rounds.
If is purely coding language related mcq test
Leet code low to medium level problem.
Azure Durable Functions enable stateful serverless workflows, managing complex orchestration and long-running processes efficiently.
Durable Functions allow you to write stateful functions in a serverless environment.
They support long-running workflows, such as approval processes or data processing pipelines.
Orchestrator functions manage the execution of other functions, enabling complex workflows.
Example: A function th...
I recently implemented the Observer pattern to enhance real-time data updates in a collaborative application.
The Observer pattern allows objects to subscribe and receive updates from a subject, promoting loose coupling.
In a collaborative document editor, multiple users can see real-time changes made by others, enhancing user experience.
I chose this pattern to manage state changes efficiently without tightly coupling co...
I applied via Naukri.com and was interviewed in Nov 2024. There was 1 interview round.
This program identifies the character 'icc' appearing only once in a given string.
Use a loop to traverse the string and check for occurrences of 'icc'.
Count the occurrences using a counter variable.
If the counter equals 1, return the position; otherwise, indicate it's not found.
Example: For input 'abciccdef', output should be the index of 'icc'.
Example: For input 'iccabcicc', output should indicate 'icc' appears more t...
This program extracts integers from a string and calculates their sum.
Use regular expressions to find all integers in the string.
Convert the extracted strings to integers.
Sum the integers using a loop or built-in functions.
Example: For input 'abc123def45', the output should be 168 (123 + 45).
I applied via LinkedIn and was interviewed in Sep 2024. There were 2 interview rounds.
It was a concept and coding test, with MCQs. Very simple and straightforward.
SOLID principles are a set of five design principles in object-oriented programming to make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable...
I have used the Singleton design pattern in my previous projects.
Singleton pattern ensures a class has only one instance and provides a global point of access to it.
It is useful when you want to control the number of instances that can be created.
Example: Creating a Logger class that should have only one instance throughout the application.
Concurrent API allows multiple tasks to be executed simultaneously, improving efficiency and performance.
Concurrent API enables parallel processing of multiple requests at the same time.
It helps in reducing latency and improving overall system performance.
Examples include Java's CompletableFuture class for asynchronous programming and Node.js's cluster module for parallel processing.
Create scenario-based questions that challenge you to utilize all of your coding skills.
Security in APIs is crucial for protecting sensitive data and preventing unauthorized access.
Use authentication methods such as OAuth or API keys to verify the identity of users accessing the API.
Implement encryption to secure data transmission between clients and servers.
Set up rate limiting to prevent abuse and protect against denial of service attacks.
Regularly update and patch the API to address security vulnerabil...
What people are saying about Publicis Sapient
Some of the top questions asked at the Publicis Sapient interview -
The duration of Publicis Sapient interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 475 interview experiences
Difficulty level
Duration
based on 3.4k reviews
Rating in categories
Gurgaon / Gurugram,
Bangalore / Bengaluru
+15-7 Yrs
₹ 9-29.2 LPA
4-11 Yrs
Not Disclosed
9-15 Yrs
₹ 38-39 LPA
Senior Associate
2.2k
salaries
| ₹16.9 L/yr - ₹32 L/yr |
Associate Technology L2
1.6k
salaries
| ₹6.7 L/yr - ₹21.5 L/yr |
Senior Associate Technology L1
1.4k
salaries
| ₹10.5 L/yr - ₹30 L/yr |
Senior Software Engineer
889
salaries
| ₹10.3 L/yr - ₹37 L/yr |
Senior Associate 2
670
salaries
| ₹14.9 L/yr - ₹42 L/yr |
Genpact
DXC Technology
Sutherland Global Services
Optum Global Solutions