i
Ernst & Young
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.
What are callbacks?
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...
Explain Hoisting in javascript.
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...
What are closures?
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...
What is the difference between slice and splice?
Slice :
1) Doesn't modify the original array(immutable)
2) Returns the subset of original array
3) Used to pick the elements from array
Splice :
1) Modifies the original array(mutable)
2) Returns the deleted elements as array
3) Used to insert or delete elements to/from array
What is a first class function?
In Javascript, functions are first class objects. First-class functions means when functions in that language are treated like any other variable.
For example, in such a language, a function can be passed as an argument to other functions, can be returned by another function and can be assigned as a value to a variable. For example, in the below example, handler functions assigned to a listener
const handler = () => c...
Sort an array of integers in JS.
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...
Code :
function binarySearch(arr,value,startPos,endPos){
if(startPos > endPos) return -1;
let middleIndex = Math.floor(startPos+endPos)/2;
if(arr[middleIndex] === value) return middleIndex;
elsif(arr[middleIndex > value]){
return binarySearch(arr,value,startPos,middleIndex-1);
}
else{
return binarySearch(arr,value,middleIndex+1,endPos);
}
}
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.
What are the differences between a class component and functional component?
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 on the UI of ...
What are stateless and stateful components?
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 component....
What is diffing algorithm?
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. Thi...
What is reconciliation?
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.
What are props in React?
The props in React are the inputs to a component of React. They can be single-valued or objects having a set of values that will be passed to components of React during creation by using a naming convention that almost looks similar to HTML-tag attributes. We can say that props are the data passed from a parent component into a child component.
The main purpose of props is to provide different component functionalities ...
What are the advantages of using Redux?
Some of the advantages of using Redux are as follows:
1) Redux provides extremely easy state transfer between the components.
2) The states are always predictable in Redux and its maintenance is relatively easy.
3) Debugging and testing code in Redux is simple through logging behaviour and status.
4) Redux provides great performance. It might occur to us that keeping the application's state global would result in bad perfo...
Highlight the key differences between mapStateToProps() and mapDispatchToProps()?
mapStateToProps() :
1) The mapStateToProps() method is used to render the stored data to the component.
2) The entirety of the results of the mapStateToProps() method is a plain object which is later merged into the component’s prop.
3) This method's use is to connect the redux state to the props of the react component.
mapDispatchToProps() :
1) The mapDispatchToProps() method is used to render the action creato...
What is Combine Reducer?
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.
How Relay is different from Redux?
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.
How can we structure the top level directories in Redux?
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.
Do you know anything about the company ?
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 .
Why should we hire you?
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 campus placement at National Institute of Technology (NIT), Patna and was interviewed in Aug 2024. There was 1 interview round.
A program to find prime numbers within a given range
Iterate through numbers in the given range
Check if each number is divisible by any number other than 1 and itself
If not divisible, it is a prime number
Count the number of ones in a given number using pseudo code
Initialize a count variable to 0
Iterate through each bit of the number and check if it is 1
Increment the count if the bit is 1
Return the count as the result
I applied via Referral and was interviewed in Sep 2024. There were 2 interview rounds.
Merge sort has a time complexity of O(n log n) in the worst case scenario.
Merge sort divides the array into two halves, sorts them recursively, and then merges them back together.
The time complexity of merge sort is O(n log n) in the worst case scenario.
For example, sorting an array of 8 elements would take 3 recursive calls to merge sort.
Create a palindrome checker using React JS to display on the UI
Create a input field for user to enter a string
Use state to store the input string
Create a function to check if the input string is a palindrome
Display the result on the UI
Javascript question on promise, callbacks, hosting
I applied via Approached by Company and was interviewed in Nov 2024. There were 2 interview rounds.
React JS Basic and JS Deep Dive
Just asked to expand on past experiences and what technologies i had experience with.
I applied via Company Website and was interviewed in Jul 2024. There were 2 interview rounds.
What is an aptitude test?
An aptitude test is a standardized test designed to assess a person's ability, skill, or knowledge in a specific area. (aptitude tests):-
1. Verbal Ability: Tests reading comprehension, grammar, and vocabulary skills.
2. Quantitative Ability: Tests mathematical skills, problem-solving, and data analysis.
3. Logical Reasoning: Tests ability to reason, think critically, and solve problems.
4. Technical Skills: Tests knowledge of specific technical skills, such as programming or coding.
Case study:-
I. Introduction:
- Brief overview of the company/organization
- Background information on the industry/market
- Purpose of the case study
II. Problem Statement:-
- Description of the problem or challenge faced by the company
- Key issues and constraints
III. Analysis:-
- SWOT analysis (Strengths, Weaknesses, Opportunities, Threats)
- Market analysis (competitor, customer, market trends)
- Financial analysis (revenue, costs, profitability)
IV. Alternatives and Options:-
- Potential solutions or strategies
- Evaluation of pros and cons
V. Recommendations:-
- Proposed solution or course of action
- Justification and rationale
VI. Implementation:-
- Action plan and timeline
- Resources and budget required
VII. Conclusion:
- Summary of key findings
- Lessons learned and takeaways.
I applied via campus placement at Vellore Institute of Technology (VIT) and was interviewed in Aug 2024. There were 2 interview rounds.
Aptitude test with different sections. Each section had its own time limit. Level - Moderate to difficult
I am a passionate software developer with experience in Java, Python, and web development.
Experienced in Java and Python programming languages
Proficient in web development technologies like HTML, CSS, and JavaScript
Currently pursuing a degree in Computer Science
Asked very good questions
Senior Consultant
15.4k
salaries
| ₹9.2 L/yr - ₹29.6 L/yr |
Consultant
11.7k
salaries
| ₹5.9 L/yr - ₹20 L/yr |
Manager
7.4k
salaries
| ₹16.5 L/yr - ₹51.2 L/yr |
Assistant Manager
6.3k
salaries
| ₹9.2 L/yr - ₹30 L/yr |
Associate Consultant
3.8k
salaries
| ₹3.5 L/yr - ₹12 L/yr |
Deloitte
PwC
EY Global Delivery Services ( EY GDS)
Accenture