Filter interviews by
I was interviewed 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.
1) A promise is an object that may produce a single value some time in the future: either a resolved value, or a
reason that it’s not resolved (e.g., a network error occurred).
2) A promise may be in one of 3 possible states: fulfilled, rejected, or pending. Promise users can attach callbacks to
handle the fulfilled value or the reason for rejection.
3) Promises are eager, meaning that a promise will start doing whatever t...
A callback is a function that will be executed after another function gets executed.
In javascript, functions are treated as first-class citizens, they can be used as an argument of another function, can be
returned by another function and can be used as a property of an object.
Functions that are used as an argument to another function are called callback functions.
Example Code :
function divideByHalf(sum){
console.log(Mat...
Hoisting is a default behaviour of javascript where all the variable and function declarations are moved on top.
This means that irrespective of where the variables and functions are declared, they are moved on top of the scope.
The scope can be both local and global.
EXAMPLE 1 :
hoistedVariable = 10;
console.log(hoistedVariable); // outputs 10 even when the variable is declared after it is initialized
var hoistedVariable;
EX...
A closure is the combination of a function and the lexical environment within which that function was declared. i.e, It is
an inner function that has access to the outer or enclosing function’s variables. The closure has three scope chains
i) Own scope where variables defined between its curly brackets
ii) Outer function’s variables
iii) Global variables
Let's take an example of closure concept,
function Welcome(name){
var gr...
Higher-order function is a function that accepts another function as an argument or returns a function as a return value or both.
EXAMPLE :
const firstOrderFunc = () => console.log ('Hello, I am a First order function');
const higherOrder = ReturnFirstOrderFunc => ReturnFirstOrderFunc();
higherOrder(firstOrderFunc);
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...
1) The sort() method allows us to sort elements of an array in place. Besides returning the sorted array, the sort()
method changes the positions of the elements in the original array.
2) By default, the sort() method sorts the array elements in ascending order with the smallest value first and largest
value last.
3) The sort() method casts elements to strings and compares the strings lexicographically to determine the ord...
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...
Approach 1 (Using Destructruring Assignment) : This method was specific only for JS and the interviewer was preety
impressed when I used it .
Destructuring assignment (a feature of ES2015) lets you extract items of an array into variables. It works with any
data type: numbers, strings, booleans, objects.
Code :
let a = 1;
let b = 2;
[a, b] = [b, a];
a; // => 2
b; // => 1
[a, b] = [b, a] is the destructuring assignment that...
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 :
1) Class-based Components uses ES6 class syntax. It can make use of the lifecycle methods.
2) Class components extend from React.Component.
3) In here you have to use this keyword to access the props and functions that you declare inside the class components.
Functional Components :
1) Functional Components are simpler comparing to class-based functions.
2) Functional Components mainly focuses ...
React needs to use algorithms to find out how to efficiently update the UI to match the most recent tree. The diffing algorithms is generating the minimum number of operations to transform one tree into another. However, the algorithms have a complexity in the order of O(n^3) where n is the number of elements in the tree.
In this case, for displaying 1000 elements would require in the order of one billion comparisons. T...
Stateless Components : If the behaviour is independent of its state then it can be a stateless component. You can use either a function or a class for creating stateless components. But unless you need to use a lifecycle hook in your components, you should go for function components.
Stateful Components : If the behaviour of a component is dependent on the state of the component then it can be termed as stateful compone...
When a component's props or state change, React decides whether an actual DOM update is necessary by comparing the newly returned element with the previously rendered one. When they are not equal, React will update the DOM. This process is called reconciliation.
The only way to change the state is to emit an action, an object describing what happened. This ensures that neither the views nor the network callbacks will ever write directly to the state. Instead, they express an intent to transform the state. Because all changes are centralized and happen one by one in a strict order, there are no subtle race conditions to watch out for. As actions are just plain objects, they can...
The combineReducers helper function turns an object whose values are different reducing functions into a single reducing function you can pass to createStore . The resulting reducer calls every child reducer, and gathers their results into a single state object.
Relay is similar to Redux in that they both use a single store. The main difference is that relay only manages state originated from the server, and all access to the state is used via GraphQL queries (for reading data) and mutations (for changing data). Relay caches the data for you and optimizes data fetching for you, by fetching only changed data and nothing more.
Every Redux application has multiple top-level directories as given below:
1) Components: Components are used for “dumb” React components unfamiliar with Redux.
2) Containers: Containers are used for “smart” React components that are connected to Redux.
3) Actions: Actions are used for all the action creators, where the file name should be corresponding to the part of the app.
4) Reducers: Reducers are used for all the red...
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.
General Tip : Before an interview for any company , have a breif insight about the company , what it does , when was
it founded and so on . All these info can be easily acquired from the Company Website itself .
Tip 1 : The cross questioning can go intense some time, think before you speak.
Tip 2 : Be open minded and answer whatever you are thinking, in these rounds I feel it is important to have opinion.
Tip 3 : Context of questions can be switched, pay attention to the details. It is okay to ask questions in these round,
like what are the projects currently the company is investing, which team you are mentoring. How all is the ...
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.
I applied via Naukri.com and was interviewed in Aug 2022. There were 3 interview rounds.
There was a test with JS and React MCQs. Plus subjective questions which are these.
1. Write a function that keep track of how many times it is called
2. What are Sass, Less, Postcss and Stylus? Why do people use them?
3. What is CSS flexbox? Explain with a simple example.
4. What is the difference between RequireJS, CommonJS and AMD Loaders?
5. Write a function that flattens an array of nested arrays into a single array.
6. What is Callback Hell? How do you avoid it?
React is a JavaScript library used for building user interfaces.
React allows for reusable components and efficient rendering.
It uses a virtual DOM to update only the necessary parts of the UI.
React is popular for its simplicity and flexibility.
Examples of companies using React include Facebook, Instagram, and Airbnb.
Virtual DOM is a lightweight copy of the actual DOM that React uses to update the UI efficiently.
Virtual DOM is a JavaScript object that represents the actual DOM.
It allows React to update only the necessary parts of the UI, improving performance.
Changes made to the Virtual DOM are compared with the previous version to determine the minimum number of changes needed to update the actual DOM.
React uses a diffing algorith...
I applied via Naukri.com and was interviewed in Mar 2021. There was 1 interview round.
To connect a component to Redux store, we use the connect function from the react-redux library.
Import the connect function from react-redux.
Use the connect function to wrap the component and connect it to the Redux store.
The connect function takes two parameters: mapStateToProps and mapDispatchToProps.
mapStateToProps is a function that maps the state from the Redux store to the component's props.
mapDispatchToProps is ...
Context API is a way to share data between components without passing props down manually.
Context API provides a way to pass data through the component tree without having to pass props down manually at every level.
It is useful for sharing data that needs to be accessed by many components at different levels of the tree.
Initial state can be set in Context API using the createContext() function.
There is no need to have ...
Yes, it is mandatory for Reducer to have an initial state.
Initial state defines the starting point of the state tree.
It helps in defining the shape of the state tree.
It is used to set default values for the state properties.
It is also used to reset the state to its initial values.
Example: const initialState = { count: 0 };
Example: const initialState = { name: '', age: 0 };
Minimum coverage for an app and code pushed to production/master branch while deployment.
Minimum coverage for an app depends on the project requirements and complexity.
Generally, a coverage of 80% or higher is considered good.
Code pushed to production/master branch should be thoroughly tested and reviewed.
Continuous integration and deployment can help automate this process.
Examples of tools for code coverage include Je
React re-renders just the part of the page that has changed, thanks to its virtual DOM.
React uses a virtual DOM to track changes in the UI.
When a component's state or props change, React compares the virtual DOM with the real DOM and updates only the necessary parts.
This approach improves performance by minimizing the number of DOM manipulations.
React's diffing algorithm efficiently determines the minimal set of change
Service Workers are scripts that run in the background and can intercept network requests, cache or modify responses.
Offline support for web applications
Push notifications
Background synchronization
Reduced network usage and faster page loads
Progressive Web Apps (PWA)
Redux-Saga is a middleware for Redux that handles side effects. Actions can be dispatched from components using mapDispatchToProps.
Redux-Saga is used to handle side effects like API calls and asynchronous actions.
It uses generator functions to make asynchronous code look synchronous.
Sagas listen for specific actions and perform tasks based on those actions.
To dispatch actions from components, use mapDispatchToProps to ...
I applied via Company Website and was interviewed in Oct 2024. There was 1 interview round.
Closure is a function that has access to its own scope, as well as the scope in which it was defined.
Closure allows a function to access variables from its outer function even after the outer function has finished executing.
It helps in maintaining state in asynchronous operations.
Example: function outerFunction() { let outerVar = 'I am outer'; return function innerFunction() { console.log(outerVar); }; }
Hooks in React are functions that let you use state and other React features without writing a class.
Hooks were introduced in React 16.8 to allow functional components to have state and lifecycle methods.
useState() is a hook that allows you to add state to functional components.
useEffect() is a hook that allows you to perform side effects in functional components.
Custom hooks are reusable functions that can contain log...
posted on 2 Jan 2025
I applied via Naukri.com and was interviewed in Dec 2024. There was 1 interview round.
React js state and useeffect
posted on 10 Jul 2024
I applied via LinkedIn and was interviewed in Jun 2024. There was 1 interview round.
Callbacks are functions passed as arguments to another function to be executed later
Callbacks are commonly used in event handling, asynchronous programming, and functional programming
Callbacks can be synchronous or asynchronous
Example: passing a callback function to a setTimeout() function
I applied via Naukri.com and was interviewed in May 2024. There was 1 interview round.
CSS Box-model defines how elements are rendered in a webpage, including padding, border, and margin.
Box-model consists of content, padding, border, and margin
Content area is where text or images are displayed
Padding is the space between content and border
Border is the line around the content and padding
Margin is the space outside the border
Flexbox is for one-dimensional layouts, grid is for two-dimensional layouts.
Flexbox is best for arranging items in a single row or column.
Grid is best for creating complex layouts with rows and columns.
Flexbox is more suitable for smaller scale layouts, while grid is better for larger scale layouts.
Flexbox is more flexible in terms of item order and sizing, while grid provides more control over the overall layout.
Both
I applied via Approached by Company and was interviewed in Jun 2024. There was 1 interview round.
Dsa question were asked
Question related to profit loss
I applied via Indeed and was interviewed in Dec 2023. There were 3 interview rounds.
Coding related questions
Software Engineer
3.2k
salaries
| ₹3.2 L/yr - ₹12.4 L/yr |
Senior Software Engineer
2k
salaries
| ₹8 L/yr - ₹19.1 L/yr |
QA Engineer
1.1k
salaries
| ₹3 L/yr - ₹11 L/yr |
Senior QA Engineer
809
salaries
| ₹6 L/yr - ₹14.2 L/yr |
System Analyst
738
salaries
| ₹9.6 L/yr - ₹25 L/yr |
TCS
Infosys
Wipro
Tech Mahindra