Faster and better experience!
i
QMetry
Filter interviews by
I applied via Recruitment Consulltant and was interviewed in Jan 2024. There were 2 interview rounds.
Prepare basic like core java , spring boot and MySQL.
The hashcode method in Java returns the hash code value for an object.
Returns an integer value representing the object's memory address
Used for efficient storage and retrieval in hash-based collections like HashMap
Should be overridden in custom classes to ensure proper functionality
HashMap is a data structure that stores key-value pairs and uses hashing to efficiently retrieve values.
HashMap uses an array of linked lists to store key-value pairs.
When a key-value pair is added, the key is hashed to determine its index in the array.
If multiple keys hash to the same index, a linked list is used to handle collisions.
To retrieve a value, the key is hashed again to find the correct index and then the l...
Method overriding is when a subclass provides a specific implementation of a method that is already provided by its parent class. Method overloading is when multiple methods have the same name but different parameters.
Method overriding is used for runtime polymorphism.
Method overloading is used for compile-time polymorphism.
Example of method overriding: public class Animal { public void sound() { System.out...
I was interviewed in Jan 2024.
Comparison between LinkedList and ArrayList, explanation of Comparator in Java, logic for XML validation using Stack, and HLD for URL shortener.
LinkedList is a doubly linked list while ArrayList is a resizable array
LinkedList is efficient for frequent insertions and deletions, while ArrayList is efficient for random access
Comparator interface in Java is used to define custom sorting logic for objects
XML validation can ...
I applied via LinkedIn and was interviewed in Mar 2023. There were 3 interview rounds.
Two coding questions, related to Arrays and String java
1 was find second largest number in array without sorting
2. Permutation of string
QMetry interview questions for popular designations
I applied via Approached by Company and was interviewed before Aug 2022. There were 2 interview rounds.
I applied via LinkedIn and was interviewed before Mar 2023. There was 1 interview round.
Assignment was inclined with the JD, read the JD carefully!
Top trending discussions
I was interviewed in Jan 2025.
I applied via Naukri.com and was interviewed in Nov 2024. There was 1 interview round.
Custom hooks in React are reusable functions that allow you to extract component logic into separate functions for better code organization and reusability.
Custom hooks are created using the 'use' prefix and can be used to share logic between components.
Use cases for custom hooks include fetching data from an API, handling form state, managing local storage, and more.
Example of a custom hook for API call: const useFetc...
useMemo is used to memoize a value, while useCallback is used to memoize a function.
useMemo is used to memoize a value and recompute it only when its dependencies change.
useCallback is used to memoize a callback function and prevent unnecessary re-renders.
Example: useMemo can be used to memoize the result of a complex computation, while useCallback can be used to memoize an event handler function.
Class-based components use ES6 classes and have lifecycle methods, while functional components are simpler and use functions.
Class-based components use ES6 classes to create components, while functional components are created using functions.
Class-based components have lifecycle methods like componentDidMount and componentDidUpdate, while functional components do not.
Functional components are simpler and more lightweig...
Implementing the lifecycle of a React component in a functional component
Use the useEffect hook to replicate lifecycle methods like componentDidMount, componentDidUpdate, and componentWillUnmount
Pass an empty array as the second argument to useEffect to mimic componentDidMount
Pass a variable or state as the second argument to useEffect to mimic componentDidUpdate
Return a cleanup function inside useEffect to mimic compo
Various state management techniques in React include Context API, Redux, and local state.
Context API: React's built-in solution for passing data through the component tree without having to pass props down manually at every level.
Redux: A popular state management library for React applications, allowing for a centralized store to manage application state.
Local state: Managing state within individual components using us
Redux is a predictable state container for JavaScript apps. Middlewares are functions that intercept actions before they reach the reducer.
Redux follows a unidirectional data flow architecture.
Middlewares in Redux are functions that can intercept, modify, or dispatch actions.
Common use cases for middlewares include logging, asynchronous API calls, and handling side effects.
Examples of popular Redux middlewares are Redu...
Hoisting in JavaScript is the behavior where variable and function declarations are moved to the top of their containing scope during the compilation phase.
Variable declarations are hoisted to the top of their scope, but not their initializations.
Function declarations are fully hoisted, meaning they can be called before they are declared.
Hoisting can lead to unexpected behavior if not understood properly.
Event bubbling is the propagation of events from the target element up through its ancestors in the DOM tree.
Events triggered on a child element will 'bubble up' and trigger on parent elements.
Event listeners can be attached to parent elements to handle events from multiple child elements.
Stopping event propagation can be done using event.stopPropagation() or event.stopImmediatePropagation().
Block scope and function scope are two types of scopes in JavaScript that determine the visibility and accessibility of variables.
Block scope refers to the visibility of variables within a block of code enclosed by curly braces. Variables declared with 'let' and 'const' have block scope.
Function scope refers to the visibility of variables within a function. Variables declared with 'var' have function scope.
Variables de...
Yes, I have experience working with semantic tags in HTML.
Used semantic tags like <header>, <nav>, <main>, <section>, <article>, <aside>, <footer> for better structure and SEO.
Understand the importance of using semantic tags for accessibility and search engine optimization.
Semantic tags help in organizing content and making it more readable for developers and browsers.
Various methods for creating an object in JavaScript include object literals, constructor functions, ES6 classes, and Object.create() method.
Object literals: var obj = { key: value };
Constructor functions: function ObjectName() { this.key = value; } var obj = new ObjectName();
ES6 classes: class ClassName { constructor() { this.key = value; } } var obj = new ClassName();
Object.create() method: var obj = Object.create(pr
Shallow copy only copies the references of nested objects, while deep copy creates new copies of nested objects.
Shallow copy creates a new object but does not create copies of nested objects, only copies their references.
Deep copy creates a new object and also creates new copies of all nested objects.
Shallow copy can be achieved using Object.assign() or spread operator, while deep copy can be achieved using JSON.parse(
The code will throw an error because 'a' is declared but not initialized.
The code will result in a ReferenceError because 'a' is declared but not assigned a value.
Variables declared with 'const' must be initialized at the time of declaration.
Initializing 'a' with a value before calling test() will prevent the error.
CSS can be used to arrange elements in a row and column layout using flexbox or grid layout properties.
Use display: flex; for a row layout and display: flex; flex-direction: column; for a column layout
Use justify-content and align-items properties to align items in the main axis and cross axis respectively
For grid layout, use display: grid; and grid-template-columns or grid-template-rows to define the layout
Yes, I have utilized CSS preprocessors such as SASS and LESS.
I have experience using SASS to streamline my CSS workflow by utilizing variables, mixins, and nesting.
I have also worked with LESS to improve code organization and maintainability through features like variables and functions.
The color applied will be based on the specificity of the selector, with ID having higher specificity than class.
ID has higher specificity than class in CSS
Color applied will be based on the selector with higher specificity
Example: If ID selector has color red and class selector has color blue, the color applied will be red
I was interviewed in Jan 2025.
Semantic tags in HTML are specific tags that provide meaning to the content they enclose.
Semantic tags help search engines and screen readers understand the structure of a webpage.
Examples of semantic tags include <header>, <footer>, <nav>, <article>, <section>, <aside>, <main>, <figure>, <figcaption>.
Using semantic tags improves SEO and accessibility of a website.
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 helps in creating reusable functions and partial application.
It allows you to create new functions by fixing some parameters of an existing function.
Example: const add = (a) => (b) => a + b; add(2)(3) will return 5.
Map is used to transform each element of an array, while Filter is used to select elements based on a condition.
Map returns a new array with the same length as the original array, but with each element transformed based on a provided function.
Filter returns a new array with only the elements that pass a provided condition function.
Example for Map: [1, 2, 3].map(num => num * 2) will result in [2, 4, 6].
Example for Fi...
Map creates a new array with the results of calling a provided function on every element, while forEach executes a provided function once for each array element.
Map returns a new array with the same length as the original array, while forEach does not return anything.
Map does not mutate the original array, while forEach can mutate the original array.
Map is more suitable for transforming data and creating a new array, w...
Authentication verifies the identity of a user, while authorization determines the user's access rights.
Authentication confirms the user's identity through credentials like username and password.
Authorization determines what actions the authenticated user is allowed to perform.
Authentication precedes authorization in the security process.
Example: Logging into a website (authentication) and then accessing specific pages
Local storage persists even after the browser is closed, while session storage is cleared when the browser is closed.
Local storage has no expiration date, while session storage expires when the browser is closed.
Local storage stores data with no limit, while session storage has a limit of around 5MB.
Local storage data is available across all windows/tabs for that domain, while session storage data is only available wit...
I was interviewed in Jan 2025.
Correlation is the process of extracting dynamic values from server responses and passing them to subsequent requests. Parameterization is the process of replacing hard-coded values in scripts with variables.
Correlation involves identifying and capturing dynamic values like session IDs or tokens from server responses.
Parameterization involves replacing hard-coded values in scripts with variables to make them reusable a...
Load testing is to test the system under normal and peak load conditions, stress testing is to test the system beyond its limits, and all testing is a combination of both.
Load testing checks the system's ability to handle expected load levels, ensuring performance under normal conditions.
Stress testing pushes the system beyond its limits to identify breaking points and measure performance degradation.
All testing combin...
PTLC stands for Performance Testing Life Cycle, which is a set of activities involved in the performance testing process.
PTLC involves planning, preparation, execution, analysis, and reporting of performance tests.
It includes defining performance goals, creating test scenarios, setting up test environments, running tests, analyzing results, and making recommendations.
Example: In PTLC, performance engineers work closely...
Issues faced in Loadrunner scripting, execution, and reports
Scripting: faced issues with correlation, parameterization, and dynamic data handling
Execution: encountered problems with test environment setup, resource constraints, and test data management
Reports: struggled with result analysis, performance bottlenecks identification, and report customization
LG calculation and workload modelling process involves determining the number of Load Generators required and creating a realistic simulation of user behavior.
Calculate the number of Load Generators needed based on expected user load and performance goals.
Create workload models by analyzing user behavior patterns, transaction volumes, and system usage.
Consider factors like peak load times, user distribution, and transa...
NFR scenarios refer to non-functional requirements that define the quality attributes of a system.
NFR scenarios focus on aspects like performance, scalability, reliability, and security.
Examples include load testing to assess system performance under expected load, stress testing to evaluate system behavior under extreme conditions, and security testing to identify vulnerabilities.
NFR scenarios help ensure that the sys...
based on 6 interviews
Interview experience
Software Engineer
26
salaries
| ₹5.8 L/yr - ₹15.4 L/yr |
Associate Software Engineer
9
salaries
| ₹4.3 L/yr - ₹7.5 L/yr |
Technical Lead
7
salaries
| ₹11 L/yr - ₹21 L/yr |
QA Engineer
6
salaries
| ₹5.8 L/yr - ₹7.1 L/yr |
UI Developer
5
salaries
| ₹4.9 L/yr - ₹11 L/yr |
Smartters Software
Apexon
Cigniti Technologies
Thinksys Software