Upload Button Icon Add office photos
Engaged Employer

i

This company page is being actively managed by Whatfix Team. If you also belong to the team, you can get access from here

Whatfix Verified Tick

Compare button icon Compare button icon Compare
3.5

based on 89 Reviews

Filter interviews by

Whatfix Front end Developer Interview Questions and Answers

Updated 23 Sep 2024

Whatfix Front end Developer Interview Experiences

1 interview found

Interview experience
5
Excellent
Difficulty level
-
Process Duration
-
Result
-

I applied via Campus Placement

Round 1 - Aptitude Test 

Coding Questions, Aptitude Questions

Round 2 - Technical 

(1 Question)

  • Q1. Next permutation
  • Ans. 

    Implement a function to find the next permutation of a given array of strings.

    • Use the concept of lexicographic ordering to find the next permutation.

    • Start from the right end of the array and find the first element that is smaller than the element next to it.

    • Swap this element with the smallest element to its right that is larger than it.

    • Reverse the elements to the right of the swapped element to get the next permutation

  • Answered by AI

Interview questions from similar companies

Interview experience
5
Excellent
Difficulty level
Hard
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Campus Placement and was interviewed in Feb 2024. There were 2 interview rounds.

Round 1 - Aptitude Test 

Question are very tough and faad

Round 2 - Coding Test 

Question like trees linked list and graphs

Interview Preparation Tips

Interview preparation tips for other job seekers - Best of luck for your future

I applied via Naukri.com and was interviewed in Nov 2022. There were 2 interview rounds.

Round 1 - Resume Shortlist 
Pro Tip by AmbitionBox:
Keep your resume crisp and to the point. A recruiter looks at your resume for an average of 6 seconds, make sure to leave the best impression.
View all tips
Round 2 - One-on-one 

(13 Questions)

  • Q1. What is denbouncer and throttle
  • Ans. 

    Debouncer and throttle are techniques used to limit the frequency of function calls.

    • Debouncing delays the execution of a function until a certain amount of time has passed without the function being called again.

    • Throttling limits the frequency of function calls to a certain rate, executing the function at fixed intervals.

    • Debouncing is useful for events that may be triggered multiple times in quick succession, such as r...

  • Answered by AI
  • Q2. What is curry function
  • Ans. 

    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 are easier to compose and chain

    • Example: const add = (a) => (b) => a + b; add(2)(3) returns 5

  • Answered by AI
  • Q3. Implement curry function
  • Ans. 

    Curry function is a higher-order function that allows partial application of arguments.

    • Currying transforms a function that takes multiple arguments into a series of functions that take one argument each.

    • It returns a new function until all the arguments are received and then executes the original function.

    • Example: const add = (a, b) => a + b; const curriedAdd = curry(add); curriedAdd(2)(3) returns 5.

  • Answered by AI
  • Q4. What is promise.all()
  • Ans. 

    promise.all() is a method that takes an array of promises and returns a new promise that resolves when all promises in the array have resolved.

    • It is used to handle multiple asynchronous operations simultaneously.

    • If any of the promises in the array rejects, the returned promise will be rejected with the reason of the first rejected promise.

    • The resolved values of the promises are returned as an array in the same order as

  • Answered by AI
  • Q5. What is memoization?
  • Ans. 

    Memoization is a technique of caching the results of a function to improve performance.

    • Memoization is used to avoid redundant calculations by storing the results of a function and returning the cached result when the same inputs occur again.

    • It is commonly used in recursive functions and functions with expensive computations.

    • Memoization can be implemented manually or by using libraries like Lodash or Memoizee.

    • Example: M...

  • Answered by AI
  • Q6. What is closure in javascript
  • Ans. 

    Closure is a function that has access to its parent scope even after the parent function has returned.

    • Closure allows for private variables and functions in JavaScript.

    • It is created when a function returns another function.

    • The inner function has access to the outer function's variables and parameters.

    • Example: function outer() { let x = 10; return function inner() { console.log(x); } }

    • The inner function can access and mo...

  • Answered by AI
  • Q7. What is the problem with colosures
  • Ans. 

    Closures can cause memory leaks if not handled properly.

    • Closures can hold references to variables outside of their scope, preventing them from being garbage collected.

    • If closures are used excessively or not released properly, they can cause memory leaks.

    • To avoid memory leaks, make sure to release closures when they are no longer needed.

  • Answered by AI
  • Q8. Some output questions on SetTimeout to check closure knowledge
  • Q9. React lifecycle events
  • Q10. Major difference between class based components and class based components
  • Ans. 

    There is no difference between class based components and class based components.

    • There seems to be a typo in the question.

    • Assuming the question is about functional components vs class components, the major difference is that class components use a class to define the component while functional components are defined as functions.

    • Class components have access to lifecycle methods while functional components do not.

    • Functi...

  • Answered by AI
  • Q11. Shallow copy vs deep copy
  • Ans. 

    Shallow copy only copies the reference to an object while deep copy creates a new object with a new memory address.

    • Shallow copy is faster and uses less memory than deep copy.

    • In shallow copy, changes made to the original object will reflect in the copied object as well.

    • Deep copy creates a completely new object with its own memory space.

    • In JavaScript, arrays and objects are assigned by reference, so a shallow copy will o...

  • Answered by AI
  • Q12. How to do deep copy ?
  • Ans. 

    Deep copy creates a new object with the same values as the original object.

    • Use Object.assign() method to create a deep copy of an object.

    • For nested objects, use recursion to copy all levels.

    • For arrays, use slice() method to create a new array with the same values.

    • Avoid using spread operator for deep copy as it only creates a shallow copy.

  • Answered by AI
  • Q13. What is hoisting? Some questions on it

Interview Preparation Tips

Interview preparation tips for other job seekers - Be thorough with closures, setTimeout, curry function, etc. The interview was taken by some third party company interview ector and not by Zepto itself

Skills evaluated in this interview

Interview experience
3
Average
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Referral and was interviewed before Apr 2023. There were 3 interview rounds.

Round 1 - Technical 

(2 Questions)

  • Q1. Max sum path in tree
  • Ans. 

    Find the maximum sum path in a tree from root to leaf node.

    • Start from the root node and traverse down to leaf nodes, keeping track of the sum at each node.

    • At each node, compare the sum of the current path with the maximum sum found so far.

    • Choose the path with the maximum sum as the final result.

  • Answered by AI
  • Q2. Array 2 sum problem
Round 2 - Technical 

(2 Questions)

  • Q1. React: Create a Timer
  • Ans. 

    Create a simple timer using React

    • Use state to store the timer value

    • Use setInterval to update the timer every second

    • Display the timer value in the component's render method

  • Answered by AI
  • Q2. Javascript: implement Debounce
Round 3 - HR 

(2 Questions)

  • Q1. What do you know about the company + common behaviour question
  • Q2. About roles in previous org

Skills evaluated in this interview

I was interviewed in Sep 2021.

Round 1 - Video Call 

(2 Questions)

Round duration - 60 Minutes
Round difficulty - Medium

Mostly focused on Data Structure & Algorithm

  • Q1. Rotate Linked List

    You have been given a Linked List having ‘N’ nodes and an integer ‘K’. You have to rotate the Linked List by ‘K’ positions in a clockwise direction.

    Example :

     Given Linked List : 1 2...
  • Ans. Brute Force

    Find the length of the Linked List to check whether the ‘K’ is greater than the Length of the Linked List or not. Take a modulo of ‘K’ with its length if it is greater than the length. Reach the (‘K’+1)th node from last and change the pointers of nodes to get a rotated Linked List.
     

    Here is the algorithm:
     

    1. Base Condition : If ‘HEAD’ is equal to ‘NULL’ or ‘K’ is equal to 0, then return ‘HEAD’ of the L...

  • Answered Anonymously
  • Q2. Reverse the order of words in a string

    You are given a string ‘STR’ containing space-separated words. A word is a sequence of non-space characters. Your task is to reverse the order of words in ‘STR’.

    No...

  • Ans. Convert to an array of words

    Use an array ‘ARR’ to store the words in ‘STR’. Traverse the string ‘STR’ and append each word at the end of ‘ARR’. Use the string ‘RES’ to store the answer. Traverse the array ‘ARR’ in reverse and append the words in ‘ARR’ to ‘RES’ followed by a whitespace character.

     

    • Create an empty array of string ‘ARR’.
    • Initialize an empty string ‘CUR_STR’. Use it to store a single word from ‘STR’.
    • Run...
  • Answered Anonymously
Round 2 - Video Call 

Round duration - 50 Minutes
Round difficulty - Medium

JavaScript core concepts with some examples and problem discussion

Round 3 - HR 

Round duration - 30 Minutes
Round difficulty - Easy

Interview Preparation Tips

Professional and academic backgroundI completed Computer Science Engineering from Shambhunath Institute of Engineering and Technology. I applied for the job as Frontend Developer in BangaloreEligibility criteria0-3 Years of ExperiencePharmEasy interview preparation:Topics to prepare for the interview - CSS Flexbox, HTML Page Rendering, Closures, ThrottlingTime required to prepare for the interview - 1 MonthInterview preparation tips for other job seekers

Tip 1 : JavaScript from javascript.info and Akshay Saini videos
Tip 2 : Practise CSS styling for big web apps like Amazon, Flipkart etc
Tip 3 : Practice writing custom hooks and react code optimization.

Application resume tips for other job seekers

Tip 1 : Write skills which you know only and be confident about it.
Tip 2 : Also, do mention the project's that you have done in your current company or as a part of your self learning.

Final outcome of the interviewSelected

Skills evaluated in this interview

Interview experience
4
Good
Difficulty level
Easy
Process Duration
-
Result
-

I applied via Referral and was interviewed in Feb 2024. There was 1 interview round.

Round 1 - Technical 

(1 Question)

  • Q1. Polyfill for bind Closures Call apply bind let const var lexical environment scope output questions
Interview experience
5
Excellent
Difficulty level
Hard
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Campus Placement and was interviewed in Feb 2024. There were 2 interview rounds.

Round 1 - Aptitude Test 

Question are very tough and faad

Round 2 - Coding Test 

Question like trees linked list and graphs

Interview Preparation Tips

Interview preparation tips for other job seekers - Best of luck for your future

I applied via Naukri.com and was interviewed in Nov 2022. There were 2 interview rounds.

Round 1 - Resume Shortlist 
Pro Tip by AmbitionBox:
Don’t add your photo or details such as gender, age, and address in your resume. These details do not add any value.
View all tips
Round 2 - One-on-one 

(13 Questions)

  • Q1. What is denbouncer and throttle
  • Ans. 

    Debouncer and throttle are techniques used to limit the frequency of function calls.

    • Debouncing delays the execution of a function until a certain amount of time has passed without the function being called again.

    • Throttling limits the frequency of function calls to a certain rate, executing the function at fixed intervals.

    • Debouncing is useful for events that may be triggered multiple times in quick succession, such as r...

  • Answered by AI
  • Q2. What is curry function
  • Ans. 

    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 are easier to compose and chain

    • Example: const add = (a) => (b) => a + b; add(2)(3) returns 5

  • Answered by AI
  • Q3. Implement curry function
  • Ans. 

    Curry function is a higher-order function that allows partial application of arguments.

    • Currying transforms a function that takes multiple arguments into a series of functions that take one argument each.

    • It returns a new function until all the arguments are received and then executes the original function.

    • Example: const add = (a, b) => a + b; const curriedAdd = curry(add); curriedAdd(2)(3) returns 5.

  • Answered by AI
  • Q4. What is promise.all()
  • Ans. 

    promise.all() is a method that takes an array of promises and returns a new promise that resolves when all promises in the array have resolved.

    • It is used to handle multiple asynchronous operations simultaneously.

    • If any of the promises in the array rejects, the returned promise will be rejected with the reason of the first rejected promise.

    • The resolved values of the promises are returned as an array in the same order as

  • Answered by AI
  • Q5. What is memoization?
  • Ans. 

    Memoization is a technique of caching the results of a function to improve performance.

    • Memoization is used to avoid redundant calculations by storing the results of a function and returning the cached result when the same inputs occur again.

    • It is commonly used in recursive functions and functions with expensive computations.

    • Memoization can be implemented manually or by using libraries like Lodash or Memoizee.

    • Example: M...

  • Answered by AI
  • Q6. What is closure in javascript
  • Ans. 

    Closure is a function that has access to its parent scope even after the parent function has returned.

    • Closure allows for private variables and functions in JavaScript.

    • It is created when a function returns another function.

    • The inner function has access to the outer function's variables and parameters.

    • Example: function outer() { let x = 10; return function inner() { console.log(x); } }

    • The inner function can access and mo...

  • Answered by AI
  • Q7. What is the problem with colosures
  • Ans. 

    Closures can cause memory leaks if not handled properly.

    • Closures can hold references to variables outside of their scope, preventing them from being garbage collected.

    • If closures are used excessively or not released properly, they can cause memory leaks.

    • To avoid memory leaks, make sure to release closures when they are no longer needed.

  • Answered by AI
  • Q8. Some output questions on SetTimeout to check closure knowledge
  • Q9. React lifecycle events
  • Q10. Major difference between class based components and class based components
  • Ans. 

    There is no difference between class based components and class based components.

    • There seems to be a typo in the question.

    • Assuming the question is about functional components vs class components, the major difference is that class components use a class to define the component while functional components are defined as functions.

    • Class components have access to lifecycle methods while functional components do not.

    • Functi...

  • Answered by AI
  • Q11. Shallow copy vs deep copy
  • Ans. 

    Shallow copy only copies the reference to an object while deep copy creates a new object with a new memory address.

    • Shallow copy is faster and uses less memory than deep copy.

    • In shallow copy, changes made to the original object will reflect in the copied object as well.

    • Deep copy creates a completely new object with its own memory space.

    • In JavaScript, arrays and objects are assigned by reference, so a shallow copy will o...

  • Answered by AI
  • Q12. How to do deep copy ?
  • Ans. 

    Deep copy creates a new object with the same values as the original object.

    • Use Object.assign() method to create a deep copy of an object.

    • For nested objects, use recursion to copy all levels.

    • For arrays, use slice() method to create a new array with the same values.

    • Avoid using spread operator for deep copy as it only creates a shallow copy.

  • Answered by AI
  • Q13. What is hoisting? Some questions on it

Interview Preparation Tips

Interview preparation tips for other job seekers - Be thorough with closures, setTimeout, curry function, etc. The interview was taken by some third party company interview ector and not by Zepto itself

Skills evaluated in this interview

Interview experience
3
Average
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Selected Selected

I applied via Referral and was interviewed before Apr 2023. There were 3 interview rounds.

Round 1 - Technical 

(2 Questions)

  • Q1. Max sum path in tree
  • Ans. 

    Find the maximum sum path in a tree from root to leaf node.

    • Start from the root node and traverse down to leaf nodes, keeping track of the sum at each node.

    • At each node, compare the sum of the current path with the maximum sum found so far.

    • Choose the path with the maximum sum as the final result.

  • Answered by AI
  • Q2. Array 2 sum problem
Round 2 - Technical 

(2 Questions)

  • Q1. React: Create a Timer
  • Ans. 

    Create a simple timer using React

    • Use state to store the timer value

    • Use setInterval to update the timer every second

    • Display the timer value in the component's render method

  • Answered by AI
  • Q2. Javascript: implement Debounce
Round 3 - HR 

(2 Questions)

  • Q1. What do you know about the company + common behaviour question
  • Q2. About roles in previous org

Skills evaluated in this interview

I was interviewed in Sep 2021.

Round 1 - Video Call 

(2 Questions)

Round duration - 60 Minutes
Round difficulty - Medium

Mostly focused on Data Structure & Algorithm

  • Q1. Rotate Linked List

    You have been given a Linked List having ‘N’ nodes and an integer ‘K’. You have to rotate the Linked List by ‘K’ positions in a clockwise direction.

    Example :

     Given Linked List : 1 2...
  • Ans. Brute Force

    Find the length of the Linked List to check whether the ‘K’ is greater than the Length of the Linked List or not. Take a modulo of ‘K’ with its length if it is greater than the length. Reach the (‘K’+1)th node from last and change the pointers of nodes to get a rotated Linked List.
     

    Here is the algorithm:
     

    1. Base Condition : If ‘HEAD’ is equal to ‘NULL’ or ‘K’ is equal to 0, then return ‘HEAD’ of the L...

  • Answered Anonymously
  • Q2. Reverse the order of words in a string

    You are given a string ‘STR’ containing space-separated words. A word is a sequence of non-space characters. Your task is to reverse the order of words in ‘STR’.

    No...

  • Ans. Convert to an array of words

    Use an array ‘ARR’ to store the words in ‘STR’. Traverse the string ‘STR’ and append each word at the end of ‘ARR’. Use the string ‘RES’ to store the answer. Traverse the array ‘ARR’ in reverse and append the words in ‘ARR’ to ‘RES’ followed by a whitespace character.

     

    • Create an empty array of string ‘ARR’.
    • Initialize an empty string ‘CUR_STR’. Use it to store a single word from ‘STR’.
    • Run...
  • Answered Anonymously
Round 2 - Video Call 

Round duration - 50 Minutes
Round difficulty - Medium

JavaScript core concepts with some examples and problem discussion

Round 3 - HR 

Round duration - 30 Minutes
Round difficulty - Easy

Interview Preparation Tips

Professional and academic backgroundI completed Computer Science Engineering from Shambhunath Institute of Engineering and Technology. I applied for the job as Frontend Developer in BangaloreEligibility criteria0-3 Years of ExperiencePharmEasy interview preparation:Topics to prepare for the interview - CSS Flexbox, HTML Page Rendering, Closures, ThrottlingTime required to prepare for the interview - 1 MonthInterview preparation tips for other job seekers

Tip 1 : JavaScript from javascript.info and Akshay Saini videos
Tip 2 : Practise CSS styling for big web apps like Amazon, Flipkart etc
Tip 3 : Practice writing custom hooks and react code optimization.

Application resume tips for other job seekers

Tip 1 : Write skills which you know only and be confident about it.
Tip 2 : Also, do mention the project's that you have done in your current company or as a part of your self learning.

Final outcome of the interviewSelected

Skills evaluated in this interview

Whatfix Interview FAQs

How many rounds are there in Whatfix Front end Developer interview?
Whatfix interview process usually has 2 rounds. The most common rounds in the Whatfix interview process are Aptitude Test and Technical.
How to prepare for Whatfix Front end Developer interview?
Go through your CV in detail and study all the technologies mentioned in your CV. Prepare at least two technologies or languages in depth if you are appearing for a technical interview at Whatfix. The most common topics and skills that interviewers at Whatfix expect are Agile, Analytics, Application Support, Architecture and Coding.

Tell us how to improve this page.

Solution Engineer
46 salaries
unlock blur

₹5.3 L/yr - ₹19 L/yr

Customer Success Manager
32 salaries
unlock blur

₹16 L/yr - ₹32 L/yr

Business Development Representative
22 salaries
unlock blur

₹8 L/yr - ₹21 L/yr

Software Development Engineer II
19 salaries
unlock blur

₹17 L/yr - ₹46.5 L/yr

Project Manager
18 salaries
unlock blur

₹18 L/yr - ₹35 L/yr

Explore more salaries
Compare Whatfix with

Freshworks

3.5
Compare

Zoho

4.3
Compare

Druva

3.6
Compare

Postman

3.8
Compare
Did you find this page helpful?
Yes No
write
Share an Interview