Rippling - SSE - Rejected

rippling logo
rippling
SDE IIRejected
January 16, 20251 reads

Summary

I interviewed for a Staff Software Engineer position at Rippling, focusing on Data Structures & Algorithms. Despite feeling confident about my production-level code and handling follow-up questions, I was unfortunately rejected because I only completed one out of three required problems.

Full Experience

I recently interviewed for a Staff Software Engineer (SSE) position at Rippling. My interview consisted of one Data Structures & Algorithms (DSA) round, which was conducted via a Hackerrank codepair link. The round started with brief introductions from both my interviewer and myself.

The primary task was to implement three APIs for a delivery system application. The core requirement was that a delivery driver has an hourly rate for performing deliveries. I was asked to implement the following three APIs:

  • addDriver(driverId: integer, hourlyRate: float)
  • addOrder(driverId, startTime, endTime): I also had to mention my choice of data type for time and justify it.
  • getTotalCost() for all the deliveries.

I found the initial question straightforward.

There were also follow-up questions:

  • "What is the issue with using float and double as data types for currency, and what data type should you use instead?"
  • "What changes would you make in the code if we wanted to update the hourly rate of a driver?"

I felt optimistic about this round because I was able to write production-level code, handling concurrency and other best practices, and I answered all the follow-up questions effectively.

Despite my performance, I was ultimately rejected. The recruiter mentioned that I had only solved one out of the three required questions. They stated that for the other two questions, at least the approach needed to be discussed. I had specifically asked the interviewer about the time limit and the number of questions at the beginning. The interviewer responded casually, advising me to proceed at my normal speed and ensure the code was production-level. I believe that if the interviewer had set clearer expectations, I would have planned my execution strategy differently.

Interview Questions (3)

Q1
Delivery System API Implementation
Data Structures & Algorithms

Implement three APIs for a delivery system where drivers have an hourly rate.

  1. addDriver(driverId: integer, hourlyRate: float)
  2. addOrder(driverId, startTime, endTime): Describe the choice of data type for time and its justification.
  3. getTotalCost() for all deliveries.
Q2
Currency Data Type Issues
Other

What are the issues with using float and double as data types for currency, and what data type should be used instead?

Q3
Update Driver Hourly Rate
Other

What changes would you make in the existing code if the requirement was to update the hourly rate of a driver?

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!