i
Nagarro
Filter interviews by
To add an element in the middle of a linked list, locate the insertion point and adjust pointers accordingly.
1. Traverse the linked list to find the middle position (e.g., length/2).
2. Create a new node with the desired value.
3. Adjust the pointers: set the new node's next to the current middle node, and the previous node's next to the new node.
Example: For a list 1 -> 2 -> 4, to insert 3: traverse to 2, cre...
My technology stack includes a mix of front-end and back-end technologies for building robust web applications.
Front-end: React.js for building user interfaces and enhancing user experience.
Back-end: Node.js with Express for server-side logic and API development.
Database: MongoDB for a NoSQL database solution, or PostgreSQL for relational data management.
Version Control: Git for tracking changes and collaboration ...
OLAP is for analysis and reporting, while OLTP is for managing day-to-day transactional data.
OLAP systems are optimized for read-heavy operations, allowing complex queries and aggregations.
OLTP systems are designed for high transaction throughput, focusing on insert, update, and delete operations.
OLAP databases often use star or snowflake schemas for data organization, while OLTP databases use normalized schemas.
E...
SQL provides various methods to remove duplicate values, primarily using DISTINCT, GROUP BY, and ROW_NUMBER().
Use SELECT DISTINCT to retrieve unique records: SELECT DISTINCT column_name FROM table_name;
Utilize GROUP BY to aggregate data and eliminate duplicates: SELECT column_name, COUNT(*) FROM table_name GROUP BY column_name;
Employ ROW_NUMBER() to assign a unique sequential integer to rows within a partition: WI...
What people are saying about Nagarro
Python is a high-level, interpreted programming language known for its readability and versatility in various applications.
Easy to learn and use, making it ideal for beginners.
Supports multiple programming paradigms, including procedural, object-oriented, and functional programming.
Widely used in web development (e.g., Django, Flask) and data science (e.g., Pandas, NumPy).
Has a large standard library and a vibrant...
I have implemented various Agile practices, focusing on collaboration, iterative development, and continuous improvement.
Daily Stand-ups: Conducted brief meetings to discuss progress and roadblocks, enhancing team communication.
Sprint Planning: Organized sessions to define sprint goals and prioritize tasks, ensuring alignment with project objectives.
Retrospectives: Facilitated discussions post-sprint to reflect on...
A web developer creates and maintains websites, ensuring functionality, user experience, and design aesthetics.
Proficient in HTML, CSS, and JavaScript for front-end development.
Experience with frameworks like React or Angular for dynamic web applications.
Knowledge of back-end technologies such as Node.js or PHP for server-side logic.
Familiarity with databases like MySQL or MongoDB for data management.
Understanding...
A web developer creates and maintains websites, ensuring functionality, user experience, and design aesthetics.
Proficient in HTML, CSS, and JavaScript for front-end development.
Experience with frameworks like React or Angular for dynamic web applications.
Knowledge of back-end technologies such as Node.js or PHP for server-side logic.
Familiarity with databases like MySQL or MongoDB for data management.
Understanding...
A framework in software QA provides a structured approach for testing, ensuring consistency and efficiency in the testing process.
Defines the testing process: A framework outlines the steps involved in testing, such as planning, execution, and reporting.
Promotes reusability: For example, a test automation framework allows testers to reuse code for similar test cases, saving time.
Enhances collaboration: Frameworks ...
Custom hooks can be created as functions or components, each serving different purposes in React.
Custom hooks as functions: They encapsulate reusable logic and can use other hooks internally.
Example: function useFetch(url) { const [data, setData] = useState(null); useEffect(() => { fetch(url).then(...); }, [url]); return data; }
Custom hooks as components: They can manage state and lifecycle methods but are less...
I applied via Naukri.com and was interviewed in Nov 2022. There were 3 interview rounds.
Aptitude test having 70 Questions that need to solve in 60 min.
Cannot answer without knowing the java program
Need to know the code to determine output
Output can vary based on input and logic
Can provide answer if given the program
I appeared for an interview in Dec 2024.
Basic quant and reasoning questions
Selenium MCQ
Java programs with MCQ
The driver is typically initialized in the setup method of a test automation framework.
Driver initialization is usually done in a setup method before test execution.
Commonly used methods for driver initialization include WebDriverManager, System.setProperty, and driver instantiation.
Example: WebDriverManager.chromedriver().setup();
Driver can be both static and non-static depending on the context of its usage.
Driver class can be static if it is used to initiate the WebDriver instance in a test automation framework.
Driver class can be non-static if it is used as an instance variable within a test class.
Static driver can be accessed directly without creating an object of the class.
Non-static driver requires an object of the class to be created befo...
Static variables belong to the class itself, while non-static variables belong to instances of the class.
Static variables are shared among all instances of a class
Non-static variables are unique to each instance of a class
Static variables are initialized only once, at the start of the program
Non-static variables are initialized separately for each instance of the class
Static and non-static have their own disadvantages in QA automation testing.
Static methods cannot be overridden or inherited, making it difficult to create flexible test cases.
Non-static methods require an instance of the class to be created, which can lead to increased memory usage.
Static methods can lead to tight coupling between classes, making it harder to maintain and update the code.
Non-static methods may have de...
TestNG allows parallel execution of test cases to save time and improve efficiency.
TestNG provides the 'parallel' attribute in the testng.xml file to specify the level of parallelism for test execution.
Parallel execution can be achieved at the test level, class level, method level, or suite level.
TestNG also supports parallel execution of tests across multiple classes or suites using the 'parallel' attribute in the sui...
Parallel testing in TestNG allows running tests concurrently for faster execution.
Use 'parallel' attribute in testng.xml file to specify parallel execution mode.
Set 'parallel' attribute to 'methods', 'classes', or 'tests' based on the level of parallelism needed.
Example: <suite name='MySuite' parallel='tests'>
Use 'thread-count' attribute to specify the number of threads to use for parallel execution.
Parallel methods run multiple methods concurrently within a single test, while parallel tests run multiple tests concurrently.
Parallel methods execute multiple methods within a single test class concurrently.
Parallel tests execute multiple test classes concurrently.
Parallel methods are useful for speeding up the execution of a single test, while parallel tests are useful for running multiple tests faster.
Example: Runni...
Use Rest Assured to upload a file
Use the given file path to create a File object
Use MultiPartSpecBuilder to build the request with the file
Send the request using Rest Assured's given(), when(), and post() methods
The parameter for a POST method in Postman is typically sent in the request body.
Parameters are sent in the request body in key-value pairs
Parameters can be sent as form-data, x-www-form-urlencoded, or raw JSON
Example: {"key": "value"}
Cucumber executes tests by interpreting Gherkin syntax, running steps defined in code, and reporting results.
Cucumber uses Gherkin language for writing test scenarios in a human-readable format.
Each scenario consists of Given, When, Then steps that describe the behavior of the application.
Step definitions in code map Gherkin steps to executable code, often written in Java, Ruby, or JavaScript.
Cucumber executes scenario...
Cucumber knows the step definition file based on the annotations provided in the feature files.
Cucumber uses annotations like @Given, @When, @Then to map steps in feature files to corresponding step definition methods.
Step definition files are typically placed in a separate package or directory within the project structure.
Cucumber scans the project directory for step definition files based on the package structure and...
Parameters used in cucumber are used to pass values to the step definitions in feature files.
Parameters are defined in feature files using < > syntax
Parameters can be passed to step definitions using Regular Expressions
Parameters can be used to make scenarios more reusable and dynamic
Datatable in Cucumber is used to pass multiple sets of data to a step definition in a scenario.
Datatables are defined using pipes (|) to separate values
Each row in the datatable represents a set of data passed to the step definition
Datatables can be used for parameterization and data-driven testing
Yes, I have created the test plan document at the start of the project.
Yes, I always create a test plan document at the beginning of a project to outline the testing approach and strategy.
The test plan document includes details on scope, objectives, resources, schedule, and test cases.
It helps in ensuring that all stakeholders are aligned on the testing process and expectations.
For example, in my previous project, I cr...
During the initial testing cycle of a project, focus is on establishing test cases, setting up test environments, and identifying potential issues.
Creating test cases based on requirements
Setting up test environments
Identifying potential issues and risks
Executing test cases and reporting defects
Collaborating with developers to resolve issues
Fibonacci sequence is a mathematical pattern where each number is the sum of the two preceding ones.
Fibonacci sequence is a series of numbers where each number is the sum of the two preceding ones.
The sequence starts with 1, 2, then each subsequent number is the sum of the two previous numbers (1+2=3, 2+3=5, 3+5=8, and so on).
This sequence is used in estimating because it reflects natural growth patterns found in natur...
Testing matrix is a tool used to track test coverage and automation ROI is the return on investment from implementing automation testing.
Testing matrix is a visual representation of test cases, test scenarios, and their coverage across different platforms, browsers, devices, etc.
Automation ROI is the measure of the benefits gained from automation testing compared to the costs incurred in implementing and maintaining th...
I applied via Naukri.com and was interviewed in Nov 2024. There were 2 interview rounds.
The Aptitude Test session accesses mathematical and logical reasoning abilities
My day in my previous organization involved analyzing large datasets, creating reports, and presenting findings to stakeholders.
Reviewing and cleaning large datasets to ensure accuracy
Creating visualizations and reports to communicate insights
Collaborating with team members to identify trends and patterns
Presenting findings to stakeholders in meetings or presentations
I possess strong technical skills in data analysis, including proficiency in programming languages, statistical analysis, and data visualization tools.
Proficient in programming languages such as Python, R, SQL
Skilled in statistical analysis and data modeling techniques
Experience with data visualization tools like Tableau, Power BI
Knowledge of machine learning algorithms and techniques
A Pivot Table is a data summarization tool used in spreadsheet programs to analyze, summarize, and present data in a tabular format.
Pivot tables allow users to reorganize and summarize selected columns and rows of data to obtain desired insights.
Users can easily group and filter data, perform calculations, and create visualizations using pivot tables.
Pivot tables are commonly used in Excel and other spreadsheet program...
To find the highest-paid employee in each department, we need to group employees by department and then select the employee with the highest salary in each group.
Group employees by department
Find the employee with the highest salary in each group
Retrieve the employee's name, salary, and department name
I applied via LinkedIn and was interviewed in Sep 2024. There were 3 interview rounds.
Basic interview on question like aptitude, javascript, typescript and react-native question
Function currying is a technique in functional programming where a function with multiple arguments is transformed into a sequence of nested functions, each taking a single argument.
Currying allows you to partially apply a function by fixing a number of arguments, which creates a new function.
It helps in creating reusable functions and improves code readability.
Example: const add = (a) => (b) => a + b; const add5 = add...
IIFE stands for Immediately Invoked Function Expression, used for creating a function that is executed immediately after it is defined.
IIFE is used to create a private scope for variables to avoid polluting the global scope.
It is commonly used in React Native development to encapsulate code and prevent naming conflicts.
Example: (function() { console.log('IIFE executed'); })();
Closures in JavaScript allow functions to retain access to their lexical scope even when executed outside that scope.
A closure is created when a function is defined inside another function.
The inner function has access to the outer function's variables.
Example: function outer() { let x = 10; return function inner() { return x; }; }
Closures are often used for data encapsulation and creating private variables.
They can al...
Call stack is used to keep track of function calls, while event loop manages asynchronous operations in JavaScript.
Call stack is a data structure that keeps track of function calls in a program.
When a function is called, it is added to the top of the call stack. When the function completes, it is removed from the stack.
Event loop is responsible for managing asynchronous operations in JavaScript, ensuring that they are ...
I appeared for an interview in Jan 2025.
I applied via Campus Placement and was interviewed in Oct 2024. There were 3 interview rounds.
It contain 40 question which is very easy
It contain 3 coding question
I primarily code on platforms like GitHub, Visual Studio Code, and online coding environments such as LeetCode and HackerRank.
GitHub: I use it for version control and collaboration on projects.
Visual Studio Code: My go-to IDE for writing and debugging code.
LeetCode: I practice algorithms and data structures to improve my problem-solving skills.
HackerRank: I participate in coding challenges and competitions to enhance m...
I applied via Approached by Company and was interviewed in Sep 2024. There were 4 interview rounds.
Coding + aptitude test
A simple SQL query retrieves data from a database table based on specified conditions.
Use SELECT to specify columns: SELECT column1, column2 FROM table_name;
Use WHERE to filter results: SELECT * FROM table_name WHERE condition;
Use ORDER BY to sort results: SELECT * FROM table_name ORDER BY column_name ASC/DESC;
Example: SELECT name, age FROM users WHERE age > 18 ORDER BY age DESC;
I applied via Naukri.com and was interviewed in Jul 2024. There were 2 interview rounds.
Online Written MCQ Aptitude test was conducted to filter candidates at first stage.
Implementing BADIs involves creating an enhancement implementation and activating it in the system.
Identify the BADI relevant to the requirement
Create an enhancement implementation using transaction SE18
Implement the necessary logic in the BADI implementation
Activate the BADI implementation using transaction SE19
Filter BADI is quick due to its ability to selectively filter data based on specific criteria.
Filter BADI allows for selective filtering of data based on specific criteria, reducing the amount of data processed.
It can be implemented at various levels in the SAP system, such as at the application level or database level.
Filter BADI can improve performance by reducing the number of records retrieved from the database.
It ...
Screen enhancement can be implemented by using screen exits or BADI implementations in SAP.
Screen exits can be implemented using transaction SMOD or CMOD to add custom fields or logic to standard SAP screens.
BADI implementations can be used to enhance screens by implementing custom logic at specific points in standard SAP transactions.
Enhancements can also be achieved using SAP Screen Personas for a more user-friendly ...
Text enhancement allows for systematic changes to table column texts across the SAP system.
Use transaction SE11 to access the Data Dictionary.
Select the table and navigate to the 'Field' section.
Modify the 'Short Description' field for the desired column.
Activate the changes to ensure they are reflected throughout the system.
Consider using transport requests for changes in production environments.
To call BADI implementations in a specific order, use BADI Sorter and screen enhancements for the BADI definition.
Implement BADI Sorter to manage the sequence of BADI calls.
Use the BADI definition to define the order of execution.
Screen enhancements can be used to modify the BADI interface.
Example: If you have multiple BADI implementations, you can assign priorities to each implementation in the sorter.
Ensure that the ...
To ensure currency column has different decimals based on currency in ABAP Report, use field symbols and currency conversion functions.
Use field symbols to dynamically assign the number of decimal places based on the currency
Utilize currency conversion functions like 'CONVERT_TO_FOREIGN_CURRENCY' to handle different decimal places for different currencies
Implement logic to determine the currency and set the decimal pla...
Use the WRITE statement with the addition COLOR to color a single column and single row in ABAP Report.
Use the WRITE statement with the addition COLOR to specify the color for the text output.
For coloring a single column, use the WRITE statement within a loop for each row and specify the column number.
For coloring a single row, use the WRITE statement for each column in that row and specify the row number.
To implement a solution in SAP, follow these steps: analyze requirements, design solution, configure system, test, deploy, and support.
Analyze the business requirements to understand the scope of the solution.
Design the solution architecture and create a detailed plan.
Configure the SAP system according to the design specifications.
Test the solution to ensure it meets the requirements and is error-free.
Deploy the soluti...
I appeared for an interview in Oct 2024, where I was asked the following questions.
A Product Owner's daily activities involve prioritizing tasks, collaborating with teams, and ensuring product vision aligns with stakeholder needs.
Prioritizing the product backlog based on stakeholder feedback and business value, e.g., using MoSCoW method.
Collaborating with the development team during daily stand-ups to clarify requirements and address any blockers.
Engaging with stakeholders to gather feedback and vali...
I assess risks and dependencies through structured analysis, stakeholder engagement, and iterative reviews.
Identify stakeholders: Engage with team members, users, and other stakeholders to gather insights on potential risks.
Conduct risk assessment workshops: Facilitate sessions to brainstorm and evaluate risks associated with the feature or epic.
Use risk matrices: Create a risk matrix to categorize risks based on their...
I prioritize backlog items by assessing stakeholder needs, business value, and technical feasibility.
Engage with stakeholders to understand their needs and expectations, e.g., conducting interviews or surveys.
Evaluate business value by considering potential ROI, e.g., prioritizing features that drive revenue.
Assess technical feasibility and dependencies, e.g., collaborating with the development team to identify technic...
I applied via Company Website and was interviewed in Sep 2024. There were 4 interview rounds.
Simple aptitude qyestions
! simple and 1 medium levelleetcode questions
Data structure question related to Array and Strings mostly
The duration of Nagarro interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 631 interview experiences
Difficulty level
Duration
based on 4.3k reviews
Rating in categories
Associate Staff Engineer
3.3k
salaries
| ₹10.2 L/yr - ₹36 L/yr |
Staff Engineer
3.3k
salaries
| ₹11.8 L/yr - ₹45 L/yr |
Senior Engineer
2.5k
salaries
| ₹6.3 L/yr - ₹23.6 L/yr |
Senior Software Engineer
1.2k
salaries
| ₹7.1 L/yr - ₹31 L/yr |
Software Engineer
1.1k
salaries
| ₹3.3 L/yr - ₹13 L/yr |
Deloitte
Cognizant
TCS
Accenture