Rippling | Senior Software Engineer | Reject

rippling logo
rippling
Senior Software EngineerRejected
October 6, 202529 reads

Summary

I interviewed for a Senior Software Engineer role at Rippling, where I was tasked with designing a delivery tracking system. Despite my successful implementation, I was ultimately rejected, likely due to a floating-point precision issue I encountered.

Full Experience

My algorithmic programming round at Rippling for a Senior Software Engineer position began with a discussion about AI tooling, which felt more like an opt-in despite initial communications suggesting liberty to use it. I chose to opt-out. The interview question required me to design and implement a Delivery Tracking System, including methods such as addDelivery, addDriver, and payUpToTime. A critical constraint involved handling cost precision at 1-second intervals. I found the problem quite straightforward and managed to complete the core implementation within 35 minutes, following a brief introductory chat and project discussion.

The interviewer then spent some time validating my solution with his own test cases. For simplicity, I had opted to use double for cost calculations, a decision I explicitly mentioned and the interviewer seemed to accept. However, my solution exhibited some rounding errors, which the interviewer noted, attributing them to the use of double. Despite this, he generally found the solution acceptable. I received a rejection email three days later. I believe the rejection was primarily due to these precision errors, or perhaps the interview concluded without me having an opportunity to refine the error handling.

Interview Questions (1)

Q1
Delivery Tracking System Design with Precision Constraint
System DesignMedium

Design and implement a Delivery Tracking System. The system should support operations such as addDelivery(delivery_id, driver_id, start_time, end_time, cost), addDriver(driver_id, name), and payUpToTime(driver_id, current_time). A crucial 'gotcha' constraint specifies that cost calculations must maintain precision at 1-second intervals.

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!