Motive (Keep Truckin) | INTERVIEW EXPERIENCE | Staff Engineer

motive logo
motive
Staff Engineer7 yearsRejected
December 23, 202525 reads

Summary

I interviewed for a Staff Engineer position at Motive, which consisted of five technical rounds covering High-Level Design, LeetCode coding, and a practical real-world coding challenge. Despite my efforts and confidence in most rounds, I ultimately received a rejection after a prolonged 1.5-month process without any specific feedback.

Full Experience

My interview process at Motive for a Staff Engineer role comprised five rounds.

The first round was with a Hiring Manager, focusing on High-Level Design for a movie ticket booking system. We discussed components like the availability and pricing engines. I felt I performed well, though the interviewer's intense questioning made it feel like a FAANG interview.

The second round involved two LeetCode medium problems: one to find a triplet whose sum equals a target (with a constant space constraint, though I don't recall the exact problem), and the other was Best Time to Buy and Sell Stock. I managed to solve both optimally and coded them effectively.

The third round also featured two LeetCode medium coding questions: Valid Parenthesis String and Group Anagrams. Again, I provided optimal solutions and coded them well.

The fourth round was another High-Level Design discussion, this time on load handling, logistics, scheduling pickups, and capacity estimation, drawing parallels to Uber's design challenges. I felt I did well, and the interviewer seemed satisfied, despite some initial ambiguities in their questions.

The fifth round was a real-world coding challenge, described as an LLD problem where I was allowed to use the internet (but not AI). This was the most challenging round; the interviewer spent 30 minutes on my past project tech questions before presenting three APIs to implement within an hour. I successfully coded one of the APIs, but overall, I felt this interviewer was unprofessional and potentially jealous.

After the interviews, the process took 1.5 months. I followed up with the recruiter multiple times but received no concrete feedback, eventually getting a rejection email without explanation. I found the entire process frustrating, identifying several red flags, particularly the LLD round. I wouldn't recommend others waste their time with this company, especially those on a notice period, as they don't expedite the process.

Interview Questions (10)

Q1
High-Level Design: Movie Ticket Booking System
System Design

Design a high-level system for a movie ticket booking platform, including discussions on the availability engine, price engine, and other relevant components.

Q2
Find Triplet with Target Sum (Constant Space)
Data Structures & AlgorithmsMedium

Given an array, find a triplet of elements whose sum equals a specified target. The problem required a solution with constant space complexity.

Q3
Best Time to Buy and Sell Stock
Data Structures & AlgorithmsEasy

Design an algorithm to find the maximum profit you can achieve by buying and selling a stock. You may complete at most one transaction.

Q4
Valid Parenthesis String
Data Structures & AlgorithmsHard

Given a string s containing only three types of characters: '(', ')', and '', return true if s is valid. The validity rules are: 1. Any left parenthesis '(' must have a corresponding right parenthesis ')'. 2. Any right parenthesis ')' must have a corresponding left parenthesis '('. 3. Left parentheses '(' must appear before the corresponding right parentheses ')'. 4. '' could be treated as a single right parenthesis ')', a single left parenthesis '(', or an empty string. An empty string is also valid.

Q5
Group Anagrams
Data Structures & AlgorithmsMedium

Given an array of strings strs, group the anagrams together. You can return the answer in any order. An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using all the original letters exactly once.

Q6
High-Level Design: Load Handling & Logistics System
System Design

Design a high-level system for load handling and logistics, including aspects like scheduling pickups and estimating capacity for loads. The interviewer suggested leveraging concepts from Uber's design.

Q7
Implement Nominatim API for Geocoding
Other

Write a method to call the Nominatim API and return an address for a given pair of longitude and latitude. API documentation: https://nominatim.org/release-docs/develop/api/Overview/

Q8
Parse CSV and Extract House Number
Other

Write a method to read a CSV file (from https://raw.githubusercontent.com/kelvins/US-Cities-Database/main/csv/us_cities.csv) and return the house_number. Note: The provided CSV file does not contain a 'house_number' column, suggesting the problem might have intended to extract a different field like 'name' or 'city'.

Q9
Implement OSRM API for Route Calculation
Other

Write a method to calculate the route between two cities using the OSRM API. The cities can be sourced from the data parsed in question #2. API documentation: http://project-osrm.org/docs/v5.23.0/api/#route-service

Q10
Build REST APIs for Geo-services
Other

Build REST APIs to expose the functionalities implemented in the previous three methods (Nominatim geocoding, CSV parsing, OSRM route calculation).

Preparation Tips

For my preparation, tackling LeetCode problems, especially those categorized as medium difficulty, proved very beneficial for the coding rounds. The system design interviews greatly leveraged my existing knowledge in High-Level Design, particularly my understanding of logistics and ride-sharing platforms like Uber. I focused on common design patterns for availability, pricing, and load management.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!