Rippling Software Engineer Coding & Algorithms Interview Questions
Practice the exact questions companies are asking right now.
Compute concurrent online drivers
Question Given each driver’s chronologically sorted delivery records, build an algorithm that, for a timestamp t, returns how many distinct drivers we...
Compute median of two sorted arrays
You are given two sorted arrays of integers nums1 and nums2. - nums1 has length m, nums2 has length n. - Both arrays are sorted in non-decreasing orde...
Convert amounts between multiple currencies
You are given a set of direct currency exchange rates and a list of queries. Each exchange rate gives you how to convert from one currency to another....
Implement an article voting tracker
Coding: Article Voting Tracker Design and implement a data structure to track users’ votes (upvote/downvote) on articles. Operations Implement functio...
Find median of two sorted arrays
You are given two sorted arrays of integers nums1 and nums2 in non-decreasing order. Let the lengths be m = nums1.length and n = nums2.length. Either ...
Aggregate expenses by person, trip, and category
Problem You are given a list of expense records. Each record has: - employee_id (string) - trip_id (string) - category (string, e.g., MEAL, HOTEL, TRA...
Track article votes and last three flips
Problem Design an in-memory data structure for voting on articles. Users can vote on an article with either: - Thumbs up - Thumbs down - No vote (user...
Compute maximum simultaneous drivers
Given N driver online intervals [start_time, end_time) during a day, compute the maximum number of drivers simultaneously online at any moment. Handle...
Compute peak concurrent drivers in 24 hours
Given delivery intervals across multiple drivers, compute the maximum number of distinct drivers simultaneously active within the last 24 hours from a...
Compute unique-dasher concurrency with tie-breaking
You are given N delivery assignments, each as (dasherId, startTime, endTime) with 0 <= startTime < endTime. A single dasher may hold multiple overlapp...
Design a music player with favorites cap
Implement an in-memory music player that supports: addSong(id, metadata), removeSong(id), play(id), pause(), next(), prev(), getNowPlaying(), queueSon...
Compute peak busy dashers with overlaps
You are given delivery logs as (dasherId, startTime, endTime) with integer times, where endTime is exclusive. A single dasher may accept multiple orde...
Compute max simultaneous drivers last 24 hours
Given delivery intervals (driverId, startTime, endTime) already recorded, implement maxSimultaneousDriverInPast24Hours() that returns the maximum numb...