← Back to Directory

Nextdoor interview notes, page 3 of 3

Mid-sized

Most of these Nextdoor write-ups come from Software Engineers (14), then Machine Learning Engineers (12) and Mobile Engineers (2). The most reported rounds are the technical phone screen (19), the system design round (4), the recruiter screen (2) and the take-home assignment (2).

29 interview notes · updated Jul 2026

Nextdoor·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Coding round at Nextdoor for an MLE role. One problem the whole time, a calendar/scheduling variant that looked like a standard intervals question until the weekday wrapping stuff showed up.
  • Given a list of intervals where each interval has a weekday (Monday through Sunday), a start time, and an end time in HH:MM format, merge all overlapping intervals and return the merged result. Intervals can span across consecutive weekdays.

“Recognized it as LC 56 pretty fast, but the weekday dimension threw me off for a minute.”

View Post

Nextdoor·Machine Learning Engineer·Technical Phone Screen

Jun 2026
Did a coding round for an MLE role at Nextdoor. Just one question, a merge intervals variant, nothing too surprising if you've been grinding leetcode.
  • Given a list of intervals, merge all overlapping ones and return the result.

“Pretty standard if you've seen it before.”

View Post

Nextdoor·Software Engineer·Technical Phone Screen

Jun 2026
SQL-heavy technical screen for a data engineering role at Nextdoor. The whole thing was built around a photo-sharing app schema and escalated pretty fast from basic counts to populating aggregate tables and computing retention cohorts. Not a vibe check at all, just raw SQL for like an hour.
  • Given a users table, write a query to count the total number of users.
  • Using the users table, find the calendar month with the highest number of new user signups.
  • Find the user with the largest follower count using the follows table.
  • Write SQL to populate a set of daily aggregate tables from raw event, user, photo, and follows data. The dashboard needs new users, DAU, new photos, new photos per DAU, total follow edges, and follower bucket distributions, all with 7-day comparisons and timezone conversion to America/Los_Angeles.
  • Extend your SQL to compute week-1 retention: for users who signed up on day D, what share had at least one event between day D+7 and D+13, using the reporting timezone?

“Warmup question, COUNT(*) on users.”

View Post

Nextdoor·Machine Learning Engineer·Take-home Assignment

Jun 2026
Nextdoor ML Engineer take-home that was basically a full production pipeline crammed into one prompt. Covered everything from data loading to batch inference and they wanted you to explain productionization on top of it. Pretty intense scope for a single assignment.
  • Build a complete end-to-end ML classification pipeline from a CSV dataset, including stratified splits, preprocessing, training a baseline and a stronger model, hyperparameter tuning, evaluation metrics, model persistence, and a batch inference function or CLI. If using a neural network, implement the full training loop explicitly. Also explain your design choices and how you'd productionize this.

“This was a lot.”

View Post

Nextdoor·Machine Learning Engineer·Recruiter / HR Screen

Jun 2026
HR screen for an ML Engineer role at Nextdoor, covering the usual motivation and behavioral questions. Nothing too surprising but the research paper question caught me slightly off guard.
  • Why do you want to join Nextdoor?
  • What project are you most proud of?
  • Walk me through one of your recent projects.
  • When did you last read a research paper, and what was it about?

“Prepared something about local community impact and how the product sits at an interesting intersection of social graph and real-world geography.”

View Post

Nextdoor·Software Engineer·Technical Phone Screen

Jun 2026
Coding round for a software engineer role at Nextdoor. One problem, feed grouping, which sounds straightforward until you actually sit down and think through the edge cases.
  • You're given a list of feed items, each with an id, type (Normal, Video, or Photo), and a score. Group every 3 consecutive Photos into a PhotoGroup (keeping their original order), where the group's score is the max score among the three. Then sort all items, including ungrouped ones, by score descending.

“The grouping part clicked pretty fast but I fumbled on the score assignment for a bit.”

View Post

Nextdoor·Machine Learning Engineer·Technical Phone Screen

Jul 2026
Nextdoor ML Engineer interview with a topological sort problem that had a tricky lexicographic twist and a follow-up about grouping constraints. The core algorithm wasn't the hard part, the extensions were.
  • Given n items and a list of ordering constraints, return a valid ordering that satisfies all constraints. If multiple valid orderings exist, return the lexicographically smallest one by item ID. If no valid ordering exists due to a cycle, return 'IMPOSSIBLE'. Also analyze time and space complexity.
  • Extend the previous solution to support groups where certain items must appear as contiguous blocks. Both within-group and between-group ordering constraints must be respected. Return any valid sequence or 'IMPOSSIBLE'.

“The base topological sort was fine, but the lexicographic requirement tripped me up for a bit.”

View Post

Nextdoor·Software Engineer·Technical Phone Screen

Jul 2026
Nextdoor software engineer interview with a meaty coding problem around version string comparison. The question had a lot of layers and I didn't fully anticipate how deep they'd want to go on the pre-release parsing piece.
  • Implement a compareVersions(a, b) function that compares two version strings with dot-separated numeric components, treating missing trailing parts as zero and ignoring leading zeros. Then extend it to handle optional pre-release tags like -alpha or -rc.1 (which sort before the release), compare pre-release tokens numerically or lexicographically depending on type, strip build metadata after '+', and return -1, 0, or 1. Also walk through complexity and describe edge case test coverage.

“Started fine with the basic numeric comparison, split on dots, parseInt to drop leading zeros, pad shorter arrays with zeros.”

View Post

Nextdoor·Software Engineer·Technical Phone Screen

Jul 2026
Coding screen at Nextdoor for a software engineer role. One problem, interval merging but with a twist on the input format that tripped me up more than I expected.
  • Given a list of time intervals expressed as day-of-week plus 24-hour clock timestamps (e.g. 'Mon 09:00'), write a function that merges all overlapping intervals and returns them in chronological order.

“The merging logic itself is pretty standard but I lost a few minutes fumbling with the parsing step.”

View Post