i
Zensar
Technologies
Filter interviews by
Bubbling and capturing are two phases of event propagation in JavaScript.
Bubbling is the default phase where the event starts from the innermost element and propagates outwards to the outermost element.
Capturing is the opposite phase where the event starts from the outermost element and propagates inwards to the innermost element.
Both phases can be used to handle events on parent and child elements.
Event.stopPropa...
JS has two types of functions: named and anonymous.
Named functions are declared with a name and can be called anywhere in the code.
Anonymous functions are declared without a name and are usually assigned to a variable.
Arrow functions are a shorthand for anonymous functions.
Higher-order functions take one or more functions as arguments or return a function as a result.
Elements are the smallest building blocks of React UI, while components are made up of one or more elements.
Elements are immutable and cannot be changed once created
Components are reusable and can be composed of other components
Elements are represented by tags, while components are represented by functions or classes
Examples of elements include
Canvas and SVGs are two different ways to create graphics on the web.
Canvas is a bitmap-based drawing technology that allows for dynamic, scriptable rendering of 2D shapes and bitmap images.
SVG is a vector-based drawing technology that allows for scalable, resolution-independent graphics.
Canvas is best suited for complex, interactive graphics, while SVG is best suited for static, high-resolution graphics.
Canvas is...
position: absolute takes element out of normal flow, position: relative keeps element in normal flow but allows for positioning
position: absolute removes element from normal flow and positions it relative to the nearest positioned ancestor
position: relative keeps element in normal flow but allows for positioning relative to its normal position
position: absolute elements are positioned relative to the nearest posit...
display: inline, block and inline-block are CSS properties that define how an element is displayed on a webpage.
display: inline - element is displayed inline with the text and other inline elements. It does not start on a new line.
display: block - element is displayed as a block-level element, starting on a new line and taking up the full width available.
display: inline-block - element is displayed inline with the...
There are several ways to create objects in JS, including object literals, constructor functions, and ES6 classes.
Object literals: var obj = {key1: value1, key2: value2}
Constructor functions: function Person(name, age) {this.name = name; this.age = age}; var person1 = new Person('John', 30)
ES6 classes: class Car {constructor(make, model) {this.make = make; this.model = model}}; var car1 = new Car('Toyota', 'Coroll...
Dynamic import is a feature in React that allows loading components or modules on demand.
Used to improve performance by loading components only when needed
Implemented using the 'import()' function
Returns a Promise that resolves to the module
Can be used with React.lazy() to lazy load components
Function currying is a technique of transforming a function that takes multiple arguments into a sequence of functions that each take a single argument.
Currying allows partial application of a function.
It helps in creating reusable functions.
Curried functions can be composed easily.
It can be achieved using bind() or closures.
Example: const add = x => y => x + y; add(2)(3) returns 5.
ForwardRefs allow React components to pass refs to their children.
Used to access child component's DOM node or instance
Used with functional components
Helps in avoiding prop drilling
Can be used with React.memo for performance optimization
I applied via Naukri.com
display: inline, block and inline-block are CSS properties that define how an element is displayed on a webpage.
display: inline - element is displayed inline with the text and other inline elements. It does not start on a new line.
display: block - element is displayed as a block-level element, starting on a new line and taking up the full width available.
display: inline-block - element is displayed inline with the text...
Pseudo classes and pseudo elements are CSS selectors that target specific states or parts of an element.
Pseudo classes target specific states of an element, such as :hover, :active, and :focus.
Pseudo elements target specific parts of an element, such as ::before and ::after.
Pseudo classes and pseudo elements are denoted by a colon (:) or double colon (::) preceding the selector.
They can be used to add special effects, ...
There are several ways to create objects in JS, including object literals, constructor functions, and ES6 classes.
Object literals: var obj = {key1: value1, key2: value2}
Constructor functions: function Person(name, age) {this.name = name; this.age = age}; var person1 = new Person('John', 30)
ES6 classes: class Car {constructor(make, model) {this.make = make; this.model = model}}; var car1 = new Car('Toyota', 'Corolla')
JS has various string methods to manipulate and extract information from strings.
toUpperCase() - converts string to uppercase
toLowerCase() - converts string to lowercase
charAt() - returns character at specified index
indexOf() - returns index of specified substring
slice() - extracts a section of a string
replace() - replaces specified substring with another string
split() - splits a string into an array of substrings
trim(...
New input types in HTML5 include color, date, email, number, range, tel, and more.
Color: Allows users to select a color.
Date: Provides a date picker for selecting dates.
Email: Ensures that the input is a valid email address.
Number: Restricts input to numeric values.
Range: Allows users to select a value within a specified range.
Tel: Ensures that the input is a valid telephone number.
ForwardRefs allow React components to pass refs to their children.
Used to access child component's DOM node or instance
Used with functional components
Helps in avoiding prop drilling
Can be used with React.memo for performance optimization
z-index is a CSS property that controls the stacking order of elements on a webpage.
z-index only works on positioned elements (position: absolute, position: relative, position: fixed, or position: sticky)
Higher z-index values stack on top of lower ones
Negative z-index values can be used to place elements behind other elements
z-index can be used to create layered effects on a webpage
Function currying is a technique of transforming a function that takes multiple arguments into a sequence of functions that each take a single argument.
Currying allows partial application of a function.
It helps in creating reusable functions.
Curried functions can be composed easily.
It can be achieved using bind() or closures.
Example: const add = x => y => x + y; add(2)(3) returns 5.
Elements are the smallest building blocks of React UI, while components are made up of one or more elements.
Elements are immutable and cannot be changed once created
Components are reusable and can be composed of other components
Elements are represented by tags, while components are represented by functions or classes
Examples of elements include
JS has two types of functions: named and anonymous.
Named functions are declared with a name and can be called anywhere in the code.
Anonymous functions are declared without a name and are usually assigned to a variable.
Arrow functions are a shorthand for anonymous functions.
Higher-order functions take one or more functions as arguments or return a function as a result.
Dynamic import is a feature in React that allows loading components or modules on demand.
Used to improve performance by loading components only when needed
Implemented using the 'import()' function
Returns a Promise that resolves to the module
Can be used with React.lazy() to lazy load components
Bubbling and capturing are two phases of event propagation in JavaScript.
Bubbling is the default phase where the event starts from the innermost element and propagates outwards to the outermost element.
Capturing is the opposite phase where the event starts from the outermost element and propagates inwards to the innermost element.
Both phases can be used to handle events on parent and child elements.
Event.stopPropagatio...
position: absolute takes element out of normal flow, position: relative keeps element in normal flow but allows for positioning
position: absolute removes element from normal flow and positions it relative to the nearest positioned ancestor
position: relative keeps element in normal flow but allows for positioning relative to its normal position
position: absolute elements are positioned relative to the nearest positioned...
Canvas and SVGs are two different ways to create graphics on the web.
Canvas is a bitmap-based drawing technology that allows for dynamic, scriptable rendering of 2D shapes and bitmap images.
SVG is a vector-based drawing technology that allows for scalable, resolution-independent graphics.
Canvas is best suited for complex, interactive graphics, while SVG is best suited for static, high-resolution graphics.
Canvas is supp...
Top trending discussions
useCallback and useMemo are both hooks used to optimize performance in React by memoizing values and functions.
useCallback is used to memoize functions and prevent unnecessary re-renders when passed as props to child components.
useMemo is used to memoize values and prevent unnecessary re-computations when used in the component's render method.
Both hooks take a dependency array as a second argument to determine when to ...
Javascript denouncing vs throttling
Denouncing is delaying the execution of a function until a certain amount of time has passed since the last time it was called
Throttling is limiting the number of times a function can be called within a certain time period
Denouncing is useful for functions that are called frequently but only need to be executed once in a while
Throttling is useful for functions that can be called multi...
let and const are block-scoped variables introduced in ES6.
let allows reassignment while const does not.
let and const have different hoisting behaviors.
const must be initialized during declaration.
let and const are not accessible outside their block scope.
Optimize page load time by reducing bundle size and using lazy loading.
Use code splitting to split the bundle into smaller chunks
Use lazy loading to load components only when needed
Minimize the use of heavy libraries and optimize images
Use server-side rendering to reduce initial load time
Use caching to reduce subsequent load times
Mine sweeper logic for a box click
To delete an element from a linked list, update the pointers of the previous node to skip the node to be deleted.
Traverse the linked list to find the node to be deleted
Update the 'next' pointer of the previous node to skip the node to be deleted
Free the memory allocated to the node to be deleted
I expect a competitive salary that reflects my skills, experience, and the industry standards for a Senior Software Engineer.
Research industry standards: For example, Glassdoor or Payscale can provide insights into average salaries for similar roles.
Consider my experience: With over 5 years in software development and expertise in multiple programming languages, I bring significant value.
Location matters: Salaries can ...
I applied via LinkedIn and was interviewed in Jul 2020. There was 1 interview round.
I applied via Naukri.com and was interviewed in Dec 2020. There was 1 interview round.
Company payroll process is the system used to manage employee compensation and benefits.
Payroll process includes calculating employee salaries, taxes, and deductions
It also involves managing employee benefits such as health insurance and retirement plans
Payroll process can be done in-house or outsourced to a third-party provider
It is important to ensure compliance with labor laws and regulations
Payroll process can be a...
posted on 2 Jun 2022
I appeared for an interview before Jun 2021.
Had DSA and aptitude questions
posted on 7 May 2022
I applied via Campus Placement and was interviewed before May 2021. There were 2 interview rounds.
Basic aptitude knowledge
Strong in java
I applied via Naukri.com and was interviewed before Sep 2019. There were 6 interview rounds.
posted on 15 Sep 2021
I appeared for an interview before Sep 2020.
Round duration - 90 minutes
Round difficulty - Easy
It happens in very friendly manner.
Given an 'M x N' matrix, print all the possible paths from the top-left corner to the bottom-right corner. You can only move either right (from (i,j) to (i,j+1)) or dow...
Print all possible paths from top-left to bottom-right in a matrix by moving only right or down.
Use backtracking to explore all possible paths from top-left to bottom-right in the matrix.
At each cell, recursively explore moving right and down until reaching the bottom-right corner.
Keep track of the current path and add it to the result when reaching the destination.
Yes, I can create 2 tables in SQL and perform operations like INSERT, SELECT, UPDATE, and DELETE.
Create Table 1: CREATE TABLE employees (id INT, name VARCHAR(50), salary DECIMAL(10,2));
Create Table 2: CREATE TABLE departments (dept_id INT, dept_name VARCHAR(50));
Insert Data: INSERT INTO employees VALUES (1, 'John Doe', 50000);
Select Data: SELECT * FROM employees WHERE salary > 40000;
Update Data: UPDATE employees SET...
Round duration - 90 minutes
Round difficulty - Medium
No problem occur very friendly environment.
Round duration - 90 minutes
Round difficulty - Hard
You need to determine all possible paths for a rat starting at position (0, 0) in a square maze to reach its destination at (N-1, N-1). The maze is represented as an N*N ma...
Find all possible paths for a rat in a maze from source to destination.
Use backtracking to explore all possible paths in the maze.
Keep track of visited cells to avoid revisiting them.
Explore all possible directions (up, down, left, right) from each cell.
Add the current direction to the path and recursively explore further.
If the destination is reached, add the path to the list of valid paths.
Tip 1 : Competitive programming plays a major role when you are appearing for coding rounds as a fresher. In the coding rounds, you won't get direct problems copied from Geeksforgeeks or Leetcode. You would be required to use your logical thinking to go ahead in the process. This is where competitive programming helps.
Tip 2 : Coding rounds are all about Coding + Timing. Most people fail to excel due to the pressure of a timer ticking on your head. So, instead of just solving problems, try to participate in timed contests. This will help you be used to the pressure of the timer.
Tip 3 : Many big companies like Microsoft, Amazon, and even Google expect you to be good at standard problems. So, once you are done with coding round by your logical skills and competitive programming, you must be well versed with some standard problems in order to excel.
Application resume tips for other job seekersTip 1 : Make it short, crisp, and simple. It is always good to have a 1 pager resume.
Tip 2 : Resume must comprise of the following: Educational Qualifications, Technical skills, Projects, Work experience (if any), Achievements. Other than this, you may include some extra co-curricular achievements.
Developed a web-based project management tool for a startup
Used React for the frontend and Node.js for the backend
Implemented user authentication and authorization using JWT
Integrated with third-party APIs such as Trello and Slack
Implemented real-time updates using WebSockets
Deployed on AWS using EC2 and RDS
I am a software engineer with experience in developing web applications and mobile apps.
Proficient in programming languages such as Java, Python, and JavaScript
Skilled in using frameworks like React, Angular, and Spring Boot
Experienced in working with databases such as MySQL and MongoDB
Familiar with Agile development methodologies and DevOps practices
Some of the top questions asked at the Zensar Technologies UI Frontend Developer interview -
Senior Software Engineer
3.9k
salaries
| ₹9.5 L/yr - ₹23.5 L/yr |
Software Engineer
3.8k
salaries
| ₹3.5 L/yr - ₹9.4 L/yr |
Technical Specialist
1.6k
salaries
| ₹16.7 L/yr - ₹29.5 L/yr |
Softwaretest Engineer
833
salaries
| ₹3.1 L/yr - ₹7.5 L/yr |
Senior Technical Specialist
794
salaries
| ₹21 L/yr - ₹35.9 L/yr |
DXC Technology
Sutherland Global Services
Optum Global Solutions
Virtusa Consulting Services