Prepin
Log in

Create a "notify me" feature for a website.

Approach / Explanation

This question essentially evaluates your design and planning abilities. Specifically, the interviewer is interested in understanding your approach to developing a "notify me" feature for a website, covering everything from the initial concept to the final implementation. This type of question is commonly posed for Full Stack or Backend Developer positions. When responding to this question, consider the following key points: User Interface: How will users interact with the feature? What process will they follow to subscribe or unsubscribe from notifications? Form of Notification: What types of notifications will be provided? Options may include emails, SMS, or in-app alerts. Content of Notifications: What information will be included in the notifications, and how will it be generated? Frequency: How frequently will the notifications be sent out? Infrastructure: What infrastructure and tools are necessary for the system (e.g., servers, databases, programming languages, frameworks, services)?

Suggested Answer

For the user interface, I would add a straightforward button labeled "notify me," which, when clicked, opens a form allowing users to specify their preferred communication method (Email or SMS) and how often they wish to receive notifications. The notification method can be either email or SMS, based on user choice. For email notifications, I would utilize a service such as SendGrid due to its powerful API for programmatically sending emails. For SMS notifications, services like Nexmo or Twilio would be suitable options. The content of the notifications will be created from the changes or updates occurring on the website. Whenever there are new updates, our backend server will gather these changes and format them into a concise and readable message. As for frequency, we should allow users to configure this according to their preferences, with options like ‘immediately’, ‘daily’, ‘weekly’, or 'monthly'. In terms of infrastructure, the main programming languages I would employ are JavaScript for the frontend and Python for the backend. This technology stack will interface with a MySQL or PostgreSQL database to store users' contact details and notification preferences. The backend will operate on a Node.js server, utilizing Express for routing and Sequelize as the ORM.

Alternative Answer

A "Notify Me" feature could include a prominent call-to-action button that, when clicked, reveals a dialog box. In this box, users can enter their email address and choose their desired type of notification from a drop-down menu. The notifications could be delivered as automated emails using services such as AWS Simple Email Service. The content of these notifications would depend on the user's choices—covering new blog posts, news updates, product changes, and more. The notification frequency could be tailored to user preferences or the update rate. By utilizing a scheduling library like cron in Node.js, we could establish different schedules for sending notifications in real-time, daily, weekly, or monthly. From an infrastructure standpoint, employing a MERN stack (MongoDB, Express, React, Node.js) would be beneficial. MongoDB would be used to store user emails and preferences. Express and Node.js would manage the backend processes of gathering updates and dispatching notifications, while React would create the Frontend interface for users to engage with the "Notify Me" feature.

Question Details

Difficulty & Category

Medium

Companies

Amazon

Product

For CandidatesFor RecruitersCompaniesBrowse JobsInterview QuestionsDeep ProfileSkill AssessmentOpportunity Matching
Prepin.ai

© 2026 Prepin LLC · Philadelphia, PA · All rights reserved.