rippling logo
Rippling· Senior SWE

Rippling Senior SWE Phone Screen (Reject)

Location
Bay Area
Experience
6 years
Posted
26 Feb 2026
428 reads

Summary

I had a phone screen for a Senior SWE role at Rippling. I was given two coding problems related to a delivery cost service, which I believe I solved correctly and with valid optimizations, but ultimately received a rejection.

How it went

YOE: 6 years

Location: Bay Area

Part 1 – Basic Implementation

Problem Statement:
We are given a list of drivers and the deliveries they are making. Implement a service to compute the total cost of all deliveries. The service should expose three methods:

    addDriver(driverId)

    addDelivery(startTime, endTime)

    getTotalCost()

Key Points:

    getTotalCost() needed to run in optimized time.

I optimized by computing and maintaining the total cost at the time of adding the delivery (instead of recalculating each time getTotalCost() is called).

Result:

The interviewer tested against custom test cases → all passed.

He confirmed my optimization approach was valid.

Part 2 – Payment Functionality

New Requirements:
Add two new functionalities:

    payUpToTime(upToTime) → settle the delivery cost up to this time.

    getCostToBePaid() → get the remaining delivery costs left after settling the payment.

My Approach:

Did I mess up here? I suggested we store the intervals for each driver and when payUpTo is called, loop over the intervals, sum up the costs and mark intervals as paid up. I explicitly asked my interviewer that this loops over all entries and if i should think of a more optimal solution, to which they said this is fine and asked me to implement

Then: costToBePaid = totalCost - paidCost

Result:
Tested with interviewer’s test cases → all worked as expected.

Final Result: Got a reject. What should I have done differently here?

Questions asked (2)

  1. 01

    Implement Delivery Cost Service

    Data Structures & Algorithms · Medium

    We are given a list of drivers and the deliveries they are making. Implement a service to compute the total cost of all deliveries. The service should expose three methods:

        addDriver(driverId)

        addDelivery(startTime, endTime)

        getTotalCost()

    Key Points:

        getTotalCost() needed to run in optimized time.

  2. 02

    Extend Delivery Service with Payment Functionality

    Data Structures & Algorithms · Medium

    Add two new functionalities:

        payUpToTime(upToTime) → settle the delivery cost up to this time.

        getCostToBePaid() → get the remaining delivery costs left after settling the payment.

Know someone preparing? Send it to them:WhatsAppLinkedInX

Interviewed at Rippling recently?

Write up your rounds while you still remember the questions. It helps the next person more than you would think.

Share your experience
Discussion 0

Questions for the author, or how your own interview compared.

Join the discussion

Sign in with Google to comment or ask the author a question.

No comments yet

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