I appeared for Rippling Interview in Jan 2025. I applied online and the recruiter reached out to me.
Recruiter gave clear instructions on what to expect in each round.
Round 1: Phone screening
According to the recruiter, I was expected to solve the base problem and scale up. I was also expected to come up with an approach to the second scale up.
Base problem: Given a list of delivery drivers, the per hour payment of each driver and a list of deliveries they do, your job is to find the total to be paid to all the driver combined. They were expecting a production quality code approach. I wrote a class and created respective fucntions for:
Scale up: Given a time when we clear payments, output the total that has to be paid. Also, there should be another function that returns the total unpaid.
Scale up 3: I don't remember now. I just had to give the approach.
Managerial round
Spoke about my experiences and the work I had done. Spoke about mentor and mentees, things I would like to change about my work and things that are working well, etc. The recruiter had given the entire script lol. I just had to prepare answers.
Onsite
System design
Design a system where Rippling's customers can upload documents for review by internal audit team. Each document has a time to review complete.
I got stuck in a lot of nice-to-haves that the interviewer kept pushing me away from. Overall, I think I was concentrating too much on unnecessary functional requirement.
Coding round 1
Base question: Given a list of songs, and users playing songs, return the list of songs in descending order of most unique users playing the songs.
Scale up: Return the per user most recently played top 3 songs. I had a discussion about the time complexity of what happens when the number 3 is arbritary and so on.
All in all, I messed up the code clarity by a huge bit.
Coding round 2
This was never scheduled because I didn't make it through.
I am not surprised that I didn't get an offer. I did bad imo.