28 questions · from 10 interviews

Moengage interview questions

Every question candidates reported from their Moengage interviews, most frequently asked first. Each links to the write-up it came from, so you can see the round and how it went.

Moengage coding and DSA questions

  1. 01

    Valid Parenthesis String

    Given a string s containing only three types of characters: '(', ')' and '', return true if s is valid. The following rules define a valid string: Any left parenthesis '(' must have a corresponding right parenthesis ')'. Any right parenthesis ')' must have a…

    From MoEngage Interview DSA Questions || SDE - 2 || Round - 1 || Rejected

  2. 02

    Car Fleet

    There are n cars at given miles away from the starting mile 0, traveling to reach the mile target. You are given two integer arrays position and speed, both of length n, where: position[i] is the starting mile of the i-th car. speed[i] is the speed of the…

    From MoEngage Interview DSA Questions || SDE - 2 || Round - 1 || Rejected

  3. 03

    Container With Most Water

    Given an array of heights where each element represents the height of a vertical line on the x‑axis, find two lines that together with the x‑axis form a container such that the container contains the most water.

    Medium · From Moengage SSE | DSA Interview Experience | Rejected

  4. 04

    Magnetic Force Between Two Balls

    Given positions for balls on a line and a minimum magnetic force, determine the largest minimum distance that can be achieved between any two placed balls.

    Medium · From Moengage SSE | DSA Interview Experience | Rejected

  5. 05

    Loyal Customers Identification

    Let’s say we have a website and we keep track of what pages customers are viewing, for things like business metrics. Every time somebody comes to the website, we write a record to a log file consisting of Timestamp, PageId, CustomerId. At the end of the day…

    From 🚀 MoEngage SDE-2 Backend Interview Experience | Loyal Customer + Rate Limiter + Retry 🔥

  6. 06

    Notification System Design

    Design a notification sending system that sends notifications to users based on their preferences. For example, in Slack, users can specify the types of notifications they want to receive (e.g., mentions, all notifications, etc.).

    From MoEngage SSE Interview Experience

  7. 07

    Stock Price Volatility Monitor

    You are given a continuous stream of stock price changes (both positive and negative). Your task is to design a VolatilityMonitor class that keeps track of the maximum volatility within the last N trades. 👉 Volatility = absolute value of price change You…

    Medium · From Interview Experience At MoEngage

  8. 08

    Implement Debouncing on a Button

    Create a button and implement debouncing on it using pure HTML, CSS, and Javascript.

    Medium · From SDE-2 Frontend MoEngage

  9. 09

    Implement `classNames` Function

    Implement a utility function classNames that concatenates CSS class names based on various input types (strings, objects with boolean values). Examples: console.log(classNames('foo', 'bar')); // "foo bar" console.log(classNames({ 'foo-bar': true })); //…

    Medium · From SDE-2 Frontend MoEngage

  10. 10

    Polyfill `Array.prototype.reduce`

    Implement a polyfill for the native JavaScript Array.prototype.reduce method.

    Medium · From SDE-2 Frontend MoEngage

  11. 11

    Implement Accordion Component in React

    Implement an Accordion component using React.

    Medium · From SDE-2 Frontend MoEngage

  12. 12

    Shuffle an Array

    The interviewer shared a link to the LeetCode problem 'Shuffle an Array'. The task was to design an algorithm to randomly shuffle an integer array, ensuring that all permutations of the array are equally likely. I needed to implement the Solution class with…

    Medium · From Data Engineer || MoEngage || 2 YOE

  13. 13

    Count Unique Drivers for City Triples in Log File

    Suppose you have a big text log file and there are three columns: Name City Timestamp Example log data: Name City Timestamp John city1 t4 Bob city1 t3 John city2 t1 John city3 t3 Bob city3 t2 John city4 t2 Bob city4 t1 The first column is a driver name, the…

    Hard · From MoEngage | SSE | Round1

  14. 14

    Implement LRU Cache

    I was asked to implement an LRU cache. I provided my approach and proceeded to code it. Initially, I had some difficulties, but I was able to refine and implement the correct solution during the interview.

    Medium · From MoEngage Senior Software Engineer Interview

Moengage system design questions

  1. 01

    Scalability and Performance Analysis

    Estimate the ephemeral storage required for a notification system handling a high volume of messages and users. Given parameters include message posting throughput, average channel size, and user ID size.

    From MoEngage SSE Interview Experience

  2. 02

    Low-Level Design for On-Call Management Support Tool (OpsGenie-like)

    I was asked to provide a low-level design for an on-call management support tool similar to OpsGenie. The tool needed to support multiple projects and employees, with various levels of responsibility for responding to incidents.

    From MoEngage Senior Software Engineer Interview

  3. 03

    Design System for Unique Category Stream Processing

    The high-level design question involved handling a stream of categories coming to an API or server. The objective was to efficiently extract unique categories from this incoming stream and then display these new unique categories to the user in their current…

    Hard · From MoEngage Senior Software Engineer Interview

Moengage behavioural and HR questions

  1. 01

    Company Knowledge

    What do you know about Moengage?

    From Moengage | Interview Experience | Selected 🎉

  2. 02

    Strengths and Weaknesses

    Tell me your strengths and weaknesses.

    From Moengage | Interview Experience | Selected 🎉

  3. 03

    Availability for Joining

    How soon will you be able to join us?

    From Moengage | Interview Experience | Selected 🎉

Moengage other questions

  1. 01

    React 16 vs 19 Migration Considerations

    Discuss the key differences between React 16 and React 19, and what aspects need to be considered when migrating a codebase from React 16 to React 19.

    Medium · From SDE-2 Frontend MoEngage

  2. 02

    Advantages of React over Other Libraries

    Explain the reasons and advantages of choosing React over other frontend libraries or frameworks.

    Easy · From SDE-2 Frontend MoEngage

  3. 03

    Disadvantages of React

    Discuss the potential drawbacks and limitations of using React.

    Easy · From SDE-2 Frontend MoEngage

  4. 04

    Explain JSX and its Necessity

    Describe what JSX is and why it is an essential part of React development.

    Easy · From SDE-2 Frontend MoEngage

  5. 05

    Conditional Rendering Techniques in React

    Explain various methods and techniques for performing conditional rendering in React.

    Easy · From SDE-2 Frontend MoEngage

  6. 06

    Virtual DOM and Reconciliation Process

    Explain the concept of the Virtual DOM and describe in detail how React's reconciliation process works.

    Medium · From SDE-2 Frontend MoEngage

  7. 07

    Reasons for React Component Re-renders

    List and explain all the common reasons why a React component might re-render.

    Medium · From SDE-2 Frontend MoEngage

  8. 08

    Higher-Order Components (HOC) with Real-Time Example

    Explain what Higher-Order Components (HOCs) are in React and provide a real-time example of their usage.

    Medium · From SDE-2 Frontend MoEngage

Moengage interview questions FAQ

What questions are asked in Moengage interviews?

Candidates reported 28 distinct questions across 10 Moengage interviews. 14 coding and DSA questions, 3 system design questions, 3 behavioural and HR questions, 8 other questions.

How difficult are Moengage interview questions?

Of the questions candidates rated, 21% were easy, 68% medium and 11% hard.