rippling logo

Rippling Interviews

4 experiences115 reads9 questions0% success rate
Rippling | Staff Engineer | Interview Experience | BLR
rippling logo
Rippling
Staff EngineerBLR10 yearsRejected
October 14, 202521 reads

Summary

I applied for a Staff Engineer position at Rippling via referral. I went through a System Design round focusing on designing an aggregator app with personalized feeds. Despite feeling the interview went well, I ultimately did not receive an offer.

Full Experience

I applied for the Staff Engineer position at Rippling through a referral. With 10 years of experience, I was invited for Round 1, which focused on High-Level Design (HLD).

The interview involved designing a new aggregator app with personalised feeds based on user interest and liking of publication house.

My proposed solution involved polling APIs of all subscription houses and storing feeds in an RDS database, considering a low volume of 5 million writes per day.

For reads, which had a requirement of 100k QPS, I suggested caching the top 100 feeds per category and publication house. User feeds would then be generated on the fly when a request came in. Since all these components would be in Redis, I expected feed generation to be very fast. I also suggested pre-generating feeds and caching them in Redis.

At the end, I felt the interview went pretty well, but I did not hear back from the recruiter, so I am assuming I was rejected. Some feedback from the recruiter would have been appreciated.

Interview Questions (1)

Q1
Design Aggregator App with Personalized Feeds
System Design

Design a new aggregator app with personalised feeds based on user interest and liking of publication house.

Rippling | Senior Software Engineer | Reject
rippling logo
Rippling
Senior Software EngineerRejected
October 6, 202530 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.

Senior SDE at Rippling
rippling logo
Rippling
Senior SDEOngoing
September 26, 202537 reads

Summary

I interviewed for a Senior SDE role at Rippling. The interview process included System Design, Web Development, and Coding rounds. The outcome is currently pending.

Full Experience

I recently interviewed for a Senior SDE position at Rippling. The interview process was structured into several rounds:

System Design

I was asked to design a hotel reservation system similar to Expedia. The key areas of focus were:
  • Searching for rooms by date and location.
  • Reserving rooms.
  • Ingesting room availability from third-party hotels.

Web Question

This round involved designing models and APIs for a questions and answers platform like Stack Overflow. I found this round a bit challenging as we already had some boilerplate locally, which made it difficult to assess how I performed. There were also some follow-up questions related to scaling and sharding.

Coding

The coding round presented a problem where I needed to implement functions for a music player. Specifically, I had to:
  • Add a song.
  • Play a song by a user.
  • Print analytics based on the number of times a song was played, ordered by the descending number of unique users.
  • Retrieve the 3 most recent unique songs played by a user.
The result of my interview is still TBD.

Interview Questions (3)

Q1
Design Hotel Reservation System
System Design

Design a hotel reservation system like Expedia. Focus on:

  • Searching for rooms by date and location.
  • Reserving rooms.
  • Rooms availability ingestion from 3rd party hotels.

Q2
Stack Overflow Models and APIs Design
Other

Design models, APIs for questions and answers in a Stack Overflow-like system. Additionally, discuss scaling and sharding related questions.

Q3
Music Player Analytics and Recently Played Songs
Data Structures & Algorithms

You have functions to add a song, play a song by a user, and print analytics. You need to:

  1. Print analytics based on the number of times a song was played in descending order of the number of unique users.
  2. Get the 3 most recent unique songs played by the user.

Senior Software Engineer | Rippling | Reject
rippling logo
Rippling
Senior Software Engineer7 yearsRejected
September 16, 202527 reads

Summary

I interviewed for a Senior Software Engineer position at Rippling and was ultimately rejected. While I performed strongly in some coding and managerial rounds, my performance in the System Design rounds, particularly the booking system design, led to the rejection.

Full Experience

I interviewed at Rippling for a Senior Software Engineer role with 7+ years of experience, primarily gained in startups. The process comprised five rounds.

Round 1: Delivery Cost Tracking System

This round focused on designing and implementing a delivery cost tracking system. It felt like a standard Rippling question, and I believe I performed well, even tackling the additional complexities. The verdict was 'Strong Hire'.

Round 2: Manager Round

For the manager round, I prepared a detailed PowerPoint presentation showcasing my most challenging project. The manager didn't delve much into technical specifics, mainly asking about SLAs and task division. I received another 'Strong Hire' verdict.

Onsites

Round 3: Rule Evaluator

The first onsite round involved designing and coding a rule evaluator. This was another common Rippling problem. I chose C++ and ended up writing a substantial amount of OOP code. In hindsight, I should have tested my code more frequently midway through the process. While I completed the implementation, there were some errors I needed to debug. This round resulted in a 'Lean Hire'.

Round 4: Design Booking System

This was a System Design round where I was asked to design a booking system. I frankly admit I was unprepared for High-Level Design rounds, having focused on Google interviews just two days prior. The interviewers expected a very thorough, complete answer and didn't engage in the collaborative discussion style I'd experienced at Google. I felt I absolutely bombed this round, receiving a 'No Hire'.

Round 5: Design Stack Overflow APIs

The final round involved designing Stack Overflow APIs. I didn't feel extensive preparation was needed here, as it primarily involved standard follow-up questions on scalability and security. I performed well, getting a 'Hire to Strong Hire' verdict.

Given my poor performance in the System Design round, I decided not to follow up with my recruiter for feedback and received a rejection email two days later. The recruiters were genuinely nice, probably the best I've encountered.

Interview Questions (4)

Q1
Design a Delivery Cost Tracking System
Data Structures & Algorithms

Design and implement a system to efficiently track delivery costs, potentially including features like real-time updates, cost aggregation, and handling various delivery parameters. The problem involved solving additional parts as discussed during the interview.

Q2
Implement a Rule Evaluator
Data Structures & Algorithms

Design and implement a flexible rule evaluation engine. This involved substantial object-oriented programming in C++, requiring careful design and implementation to handle various rule types and conditions.

Q3
Design a Booking System
System DesignHard

Design a comprehensive, scalable booking system. This system design problem required a full-length answer detailing high-level architecture, API design, database considerations, and scalability strategies, without much interviewer guidance or collaborative discussion.

Q4
Design Stack Overflow APIs
System Design

Design the core APIs for a platform similar to Stack Overflow. The discussion included standard follow-up questions concerning scalability, security, and how to handle various functionalities like question posting, answering, voting, and search.

Preparation Tips

My preparation included crafting a detailed PowerPoint presentation for the managerial round, focusing on my most challenging project. However, I confess my preparation for High-Level Design rounds was insufficient, especially due to my focus on prior Google interviews. My main advice to others would be to thoroughly study Rippling's standard questions and be prepared to deliver clean, functional code, as they expect finished solutions rather than collaborative problem-solving.

Have a Rippling Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Rippling.