i
CGI Group
Proud winner of ABECA 2024 - AmbitionBox Employee Choice Awards
Filter interviews by
I applied via Recruitment Consulltant and was interviewed in Jul 2024. There was 1 interview round.
I applied via Naukri.com and was interviewed in Aug 2024. There were 2 interview rounds.
Online Hackathon test was taken.
I am a passionate React Js Frontend Developer with experience in building user-friendly and responsive web applications.
Experienced in developing web applications using React Js
Proficient in HTML, CSS, and JavaScript
Familiar with state management libraries like Redux
Strong understanding of responsive design principles
Ability to work collaboratively in a team environment
I am responsible for developing and maintaining the frontend of the project using React Js.
Developing user-friendly interfaces using React Js
Implementing responsive design and ensuring cross-browser compatibility
Collaborating with backend developers to integrate frontend with backend services
Optimizing application performance and troubleshooting issues
Participating in code reviews and providing feedback to team members
SSR in React is implemented using server-side rendering to pre-render React components on the server before sending them to the client.
Use libraries like Next.js or Gatsby to implement SSR in React.
Configure server to render React components on the server side.
Optimize server-side rendering for performance by caching rendered components.
To change a React project from development mode to production mode, you need to build the project using the 'npm run build' command.
Run 'npm run build' command in the terminal to create a production build of the project.
This command will generate a 'build' folder with optimized and minified files for production.
You can then deploy the contents of the 'build' folder to a web server for production use.
Lazy loading is a technique used to defer loading non-essential resources until they are needed.
Lazy loading helps improve performance by only loading resources when they are required.
In React, lazy loading can be implemented using React.lazy() and Suspense components.
Example: const MyComponent = React.lazy(() => import('./MyComponent'));
Example:
React routing is a way to handle navigation in a React application by defining routes and rendering components based on the URL.
React routing allows for declarative routing, where routes are defined using JSX elements.
It enables dynamic routing based on the URL, allowing for different components to be rendered based on the route.
React Router is a popular library for handling routing in React applications.
Unlike convent...
Prop drilling is the process of passing props down multiple levels of nested components in React.
Prop drilling occurs when a prop needs to be passed through multiple levels of components that do not need the prop themselves.
It can lead to unnecessary passing of props through intermediate components, making the code harder to maintain.
To avoid prop drilling, you can use Context API, Redux, or React's useContext and useR...
Hoisting is a JavaScript mechanism 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 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.
useContext hook allows components to access data from a context without passing props down manually
useContext hook is used to consume a context created by React.createContext
It takes the context object as an argument and returns the current context value for that context
It allows components to subscribe to context changes and re-render when the context value changes
I applied via Naukri.com and was interviewed before Oct 2023. There were 4 interview rounds.
Online coding round which included question from React and js
posted on 4 Apr 2024
I applied via Walk-in and was interviewed in Mar 2024. There were 2 interview rounds.
What is react , feature, axios, API
Redux Redux toolkit Redux thunk
I was interviewed in May 2024.
Redux is a predictable state container for JavaScript apps.
Redux is a state management library for JavaScript applications.
It helps in managing the state of the application in a predictable way.
Redux stores the entire state of the application in a single immutable object.
Actions are dispatched to update the state, and reducers specify how the state changes in response to actions.
Redux is commonly used with React to man...
Virtual DOM is a lightweight copy of the actual DOM in memory, used by React to improve performance by minimizing actual DOM manipulations.
Virtual DOM is a concept where a lightweight copy of the actual DOM is kept in memory.
React uses Virtual DOM to improve performance by minimizing actual DOM manipulations.
When state changes in a React component, a new Virtual DOM representation is created and compared with the previ...
useMemo is used for memoizing expensive calculations, while React.memo is used for memoizing functional components.
useMemo is a hook used to memoize expensive calculations and only recompute the value when the dependencies change.
React.memo is a higher order component used to memoize functional components and prevent unnecessary re-renders.
useMemo is typically used for optimizing performance by caching values, while Re...
map returns a new array with modified elements, forEach does not return anything and just iterates over the array.
map returns a new array with the results of calling a provided function on every element in the array.
forEach executes a provided function once for each array element without returning anything.
Example: const numbers = [1, 2, 3]; const doubled = numbers.map(num => num * 2); // doubled will be [2, 4, 6]; num...
Find duplicates in an array of strings
Iterate through the array and use a hash map to keep track of the frequency of each element
If an element is already in the hash map, it is a duplicate
Currying is a technique in functional programming where a function with multiple arguments is transformed into a sequence of functions, each taking a single argument.
Currying helps in creating reusable functions and improving code readability.
It allows partial application of functions, where some arguments are fixed and others are left to be provided later.
Example: const add = (a) => (b) => a + b; add(2)(3) will return
I was interviewed in Oct 2024.
React Query is a library for managing server state in React applications, while Redux is a state management library for managing client-side state.
React Query is specifically designed for managing server state, making it easier to fetch, cache, and update data from APIs.
Redux is a more general-purpose state management library that can be used for managing client-side state in a predictable way.
React Query provides buil...
Interface is for defining object shapes and types, while type is for creating aliases for existing types.
Interface is used for defining the structure of an object in TypeScript.
Type is used to create aliases for existing types, making code more readable and reusable.
Interfaces can be extended or implemented, while types can be used to create union types or intersection types.
Interfaces are open for extension, while typ
I applied via Naukri.com and was interviewed in Sep 2023. There were 2 interview rounds.
A Higher Order Component (HOC) is a function that takes a component and returns a new component with additional functionality.
HOCs are used to share code between components, add additional features, or modify behavior.
They are commonly used for tasks like authentication, logging, and data fetching.
Example: const withAuth = (WrappedComponent) => { return class extends React.Component { render() { return
A custom hook is a reusable function that allows you to extract component logic into a separate function.
Custom hooks start with 'use' keyword.
Custom hooks can call other hooks if needed.
Custom hooks can be shared and reused across multiple components.
A closure function is a function that has access to its own scope, as well as the outer scope in which it was defined.
A closure function can access variables from its outer scope even after the outer function has finished executing.
Closures are commonly used to create private variables in JavaScript.
Example: function outerFunction() { let outerVar = 'I am outer'; return function innerFunction() { console.log(outerVar);...
I applied via Referral and was interviewed in Jan 2024. There were 3 interview rounds.
Virtual DOM is a lightweight copy of the actual DOM that React uses to improve performance by minimizing direct manipulation of the actual DOM.
Virtual DOM is a representation of the actual DOM in the form of a lightweight copy.
When changes are made to the virtual DOM, React compares it with the actual DOM to identify the minimal number of changes needed.
This process helps in optimizing performance by reducing direct ma...
Reconciliation in React is the process of updating the DOM to match the virtual DOM.
Reconciliation is the algorithm that React uses to update the UI efficiently.
It compares the virtual DOM with the previous virtual DOM and only updates the necessary components.
Reconciliation helps in improving performance by minimizing DOM manipulations.
Key prop is important for reconciliation to identify which items have changed, adde...
Closures are functions that have access to variables from their outer scope even after the outer function has finished executing.
Closures allow functions to access variables from their parent function's scope
They maintain a reference to the variables they need, even after the parent function has finished executing
Closures are commonly used in event handlers and callbacks
Hoisting is a JavaScript mechanism where variable and function declarations are moved to the top of their containing scope during compilation.
Hoisting applies to both variable and function declarations.
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.
ES6 features are modern JavaScript syntax enhancements that make code more concise and readable.
Arrow functions for more concise syntax: const add = (a, b) => a + b;
Let and const for block-scoped variables: let x = 5; const y = 10;
Template literals for string interpolation: const name = 'Alice'; console.log(`Hello, ${name}!`);
Destructuring assignment for easily extracting values from objects or arrays: const { firstNam...
React Fiber is a complete rewrite of React's core algorithm for rendering UI components.
React Fiber is a reimplementation of the React core algorithm.
It allows for incremental rendering, prioritizing updates based on their priority level.
Fiber reconciles the virtual DOM tree in a more efficient and flexible way.
It enables features like error boundaries, async rendering, and more.
Fiber was introduced in React version 16
Implementing dark mode in an application involves changing the color scheme to darker tones for better visibility in low light environments.
Use CSS variables to define color schemes for light and dark modes
Toggle between light and dark mode using a state variable in React
Apply the appropriate color scheme based on the selected mode
Allow users to switch between light and dark mode using a toggle button
based on 1 interview
Interview experience
based on 1 review
Rating in categories
Software Engineer
8.1k
salaries
| ₹3.8 L/yr - ₹12 L/yr |
Senior Software Engineer
7.2k
salaries
| ₹6.1 L/yr - ₹22.5 L/yr |
Lead Analyst
3.1k
salaries
| ₹9.9 L/yr - ₹29.5 L/yr |
Associate Software Engineer
1.9k
salaries
| ₹2.5 L/yr - ₹6.6 L/yr |
Senior Test Engineer
1.2k
salaries
| ₹6 L/yr - ₹18.4 L/yr |
TCS
Infosys
Wipro
HCLTech