Filter interviews by
State in Redux is changed by dispatching actions to reducers, which then update the state immutably.
State changes in Redux by dispatching actions to reducers
Reducers receive the current state and an action, then return a new state
State is updated immutably in Redux
Callbacks in JavaScript are functions passed as arguments to other functions to be executed later.
Callbacks are commonly used in event handling, asynchronous programming, and functional programming.
They allow for functions to be executed after another function has finished executing.
Example: setTimeout function takes a callback function as an argument to be executed after a specified time.
Top-level directories in Redux should be structured based on functionality and feature modules.
Organize directories based on feature modules, such as 'auth', 'todos', 'users'.
Separate concerns by having directories for actions, reducers, components, and containers.
Utilize a 'shared' directory for common functionality used across multiple feature modules.
Consider using a 'utils' directory for utility functions and ...
Hoisting is a JavaScript mechanism where variable and function declarations are moved to the top of their containing scope during compilation.
Variable declarations are hoisted to the top of their scope but not their assignments.
Function declarations are fully hoisted, meaning they can be called before they are declared.
Hoisting can lead to unexpected behavior if not understood properly.
React uses a diffing algorithm called Virtual DOM to efficiently update the actual DOM.
React creates a virtual representation of the DOM called Virtual DOM.
When state or props change, React compares the Virtual DOM with the actual DOM to find the differences.
React then updates only the parts of the actual DOM that have changed, minimizing re-renders and improving performance.
Promises in JavaScript represent the eventual completion (or failure) of an asynchronous operation.
Promises are objects that represent the eventual completion (or failure) of an asynchronous operation.
They have three states: pending, fulfilled, or rejected.
A pending promise is one that hasn't been fulfilled or rejected yet.
A fulfilled promise is one that has been successful.
A rejected promise is one that has encou...
Combine Reducer is a function in Redux that combines multiple reducers into a single reducer function.
Combines multiple reducers into a single reducer function
Helps manage different pieces of state in Redux store
Improves code organization and maintainability
Example: combineReducers({ reducer1, reducer2 })
Example: const rootReducer = combineReducers({ reducer1, reducer2 })
Relay is a GraphQL client specifically designed for React, while Redux is a state management library for any JavaScript app.
Relay is tightly integrated with GraphQL, providing a declarative way to fetch and manage data for React components.
Redux is a standalone state management library that can be used with any JavaScript framework, not just React.
Relay encourages colocating data requirements with React components...
Stateless components do not have internal state, while stateful components have internal state that can change.
Stateless components are functional components that do not have internal state
Stateful components are class components that have internal state that can change
Stateless components are simpler and easier to test, while stateful components are more powerful and flexible
Example: Stateless component - const B...
Class components are ES6 classes that extend from React.Component and have state, while functional components are simple functions that take props as arguments.
Class components are ES6 classes that extend from React.Component
Functional components are simple functions that take props as arguments
Class components have state and lifecycle methods, while functional components do not
Functional components are easier to ...
I appeared for an interview in Sep 2021.
Round duration - 60 Minutes
Round difficulty - Medium
This was a preety intense round revolving mainly around the core concepts of JavaScript . I was confident about my skills in JavaScript as I already had some projects in JS and I also completed the Guided Path of JS in CodeStudio which boosted my preparation and helped me crack these Frontend Interviews.
Promises in JavaScript represent the eventual completion (or failure) of an asynchronous operation.
Promises are objects that represent the eventual completion (or failure) of an asynchronous operation.
They have three states: pending, fulfilled, or rejected.
A pending promise is one that hasn't been fulfilled or rejected yet.
A fulfilled promise is one that has been successful.
A rejected promise is one that has encountere...
Callbacks in JavaScript are functions passed as arguments to other functions to be executed later.
Callbacks are commonly used in event handling, asynchronous programming, and functional programming.
They allow for functions to be executed after another function has finished executing.
Example: setTimeout function takes a callback function as an argument to be executed after a specified time.
Hoisting is a JavaScript mechanism where variable and function declarations are moved to the top of their containing scope during compilation.
Variable declarations are hoisted to the top of their scope but not their assignments.
Function declarations are fully hoisted, meaning they can be called before they are declared.
Hoisting can lead to unexpected behavior if not understood properly.
Closures in JavaScript allow functions to retain access to variables from their parent scope even after the parent function has finished executing.
Closures are created whenever a function is defined within another function.
They allow the inner function to access variables from the outer function, even after the outer function has finished executing.
Closures are commonly used to create private variables and functions in...
A higher order function is a function that takes one or more functions as arguments or returns a function as its result.
Higher order functions can be used to create abstractions and compose functions together.
Examples include map, filter, and reduce functions in JavaScript.
Higher order functions can also be used for event handling and asynchronous programming.
Given an array consisting of 'N' positive integers where each integer is either 0, 1, or 2, your task is to sort the given array in non-decreasing order.
Each input st...
Sort an array of positive integers consisting of 0, 1, and 2 in non-decreasing order.
Use a counting sort approach to count the occurrences of 0s, 1s, and 2s in the array.
Update the array with the counts of 0s, 1s, and 2s in order to achieve the sorted array.
Ensure to handle the constraints of the input array elements being 0, 1, or 2.
Example: Input: [0, 2, 1, 2, 0], Output: [0, 0, 1, 2, 2]
Given two integers a
and b
, your task is to swap these numbers and output the swapped values.
The first line contains a single integer 't', representing the num...
Swap two numbers 'a' and 'b' and output the swapped values.
Create a temporary variable to store one of the numbers
Assign the value of 'a' to 'b' and the temporary variable to 'a'
Output the swapped values as 'b' followed by 'a'
Round duration - 60 Minutes
Round difficulty - Medium
In this round, I was asked questions from React and Redux. Since I already had prior experience in working with React and Redux , I answered most of the questions correctly and was preety much confident about passing this round.
Class components are ES6 classes that extend from React.Component and have state, while functional components are simple functions that take props as arguments.
Class components are ES6 classes that extend from React.Component
Functional components are simple functions that take props as arguments
Class components have state and lifecycle methods, while functional components do not
Functional components are easier to read,...
React uses a diffing algorithm called Virtual DOM to efficiently update the actual DOM.
React creates a virtual representation of the DOM called Virtual DOM.
When state or props change, React compares the Virtual DOM with the actual DOM to find the differences.
React then updates only the parts of the actual DOM that have changed, minimizing re-renders and improving performance.
Stateless components do not have internal state, while stateful components have internal state that can change.
Stateless components are functional components that do not have internal state
Stateful components are class components that have internal state that can change
Stateless components are simpler and easier to test, while stateful components are more powerful and flexible
Example: Stateless component - const Button...
Reconciliation in ReactJS is the process of updating the DOM to match the virtual DOM after a component's state or props have changed.
Reconciliation is the algorithm React uses to update the DOM efficiently.
It compares the virtual DOM with the actual DOM and only updates the parts that have changed.
Reconciliation is a key feature that helps React achieve high performance.
Example: When a component's state changes, React...
State in Redux is changed by dispatching actions to reducers, which then update the state immutably.
State changes in Redux by dispatching actions to reducers
Reducers receive the current state and an action, then return a new state
State is updated immutably in Redux
Combine Reducer is a function in Redux that combines multiple reducers into a single reducer function.
Combines multiple reducers into a single reducer function
Helps manage different pieces of state in Redux store
Improves code organization and maintainability
Example: combineReducers({ reducer1, reducer2 })
Example: const rootReducer = combineReducers({ reducer1, reducer2 })
Relay is a GraphQL client specifically designed for React, while Redux is a state management library for any JavaScript app.
Relay is tightly integrated with GraphQL, providing a declarative way to fetch and manage data for React components.
Redux is a standalone state management library that can be used with any JavaScript framework, not just React.
Relay encourages colocating data requirements with React components, whi...
Top-level directories in Redux should be structured based on functionality and feature modules.
Organize directories based on feature modules, such as 'auth', 'todos', 'users'.
Separate concerns by having directories for actions, reducers, components, and containers.
Utilize a 'shared' directory for common functionality used across multiple feature modules.
Consider using a 'utils' directory for utility functions and helpe...
Round duration - 30 Minutes
Round difficulty - Easy
This was a Technical Cum HR round where I was first asked some basic principles around Frontend Web Development and then we discussed about my expectations from the company , learnings and growth in the forthcomig years. I would suggest be honest and try to communicate your thoughts properly in these type of rounds to maximise your chances of getting selected.
Tip 1 : Do at-least 2 good projects and you must know every bit of them.
Tip 2 : Understand the fundamentals of JavaScript as they are asked very often.
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.
Top trending discussions
posted on 21 Mar 2015
I appeared for an interview before Aug 2016.
I applied via Campus Placement and was interviewed in Mar 2021. There were 3 interview rounds.
I applied via Naukri.com and was interviewed in Mar 2021. There were 5 interview rounds.
posted on 20 Oct 2021
I applied via Campus Placement and was interviewed in Sep 2021. There was 1 interview round.
Java is a high-level, object-oriented programming language used to develop applications for various platforms.
Java is platform-independent and can run on any device with a Java Virtual Machine (JVM)
It is used for developing web, mobile, desktop, and enterprise applications
Java is known for its security features and robustness
It follows the Write Once, Run Anywhere (WORA) principle
Java has a vast library of pre-built cl...
Python is a high-level, interpreted programming language known for its simplicity, readability, and versatility.
Python is used for web development, data analysis, artificial intelligence, and more.
It has a large standard library and supports multiple programming paradigms.
Python code is often shorter and easier to read than other languages.
It uses indentation to indicate code blocks instead of curly braces or keywords.
...
I applied via Campus Placement and was interviewed before Jun 2021. There were 2 interview rounds.
Average questions , not too easy not too difficult
I applied via Job Fair and was interviewed before Mar 2021. There were 3 interview rounds.
I applied via Naukri.com and was interviewed before Sep 2020. There were 3 interview rounds.
Company policies and locations
Our company has strict policies regarding data privacy and security
We have multiple locations across the country and internationally
Each location has its own set of policies and procedures
Employees are expected to adhere to all company policies regardless of location
An interface in software development defines a contract for classes to implement, specifying methods and properties.
Interfaces in programming languages like Java and C# allow for multiple inheritance by defining a set of methods that a class must implement.
Interfaces are used to enforce a certain behavior in classes that implement them.
Interfaces provide a way to achieve abstraction and polymorphism in object-oriented ...
Software Engineer
3.2k
salaries
| ₹4.2 L/yr - ₹13 L/yr |
Senior Software Engineer
2.1k
salaries
| ₹11.3 L/yr - ₹20.6 L/yr |
QA Engineer
1k
salaries
| ₹5 L/yr - ₹11.2 L/yr |
Senior QA Engineer
794
salaries
| ₹8.9 L/yr - ₹15.6 L/yr |
System Analyst
773
salaries
| ₹15.3 L/yr - ₹25.7 L/yr |
Mphasis
L&T Technology Services
Coforge
eClerx