Rippling L6 Interview Experience | Reject

rippling logo
rippling
l6Rejected
January 22, 20252 reads

Summary

I interviewed for an L6 position at Rippling, completing five challenging rounds including DSA and System Design, but ultimately received a rejection.

Full Experience

My interview journey for an L6 role at Rippling consisted of five distinct rounds, culminating in a rejection.

Round 1 - DSA

This round involved designing a Music Player similar to Spotify. The core methods to implement were addSong, playSong, and printMostPlayedSongs, which required tracking unique user plays. The follow-up extended this to retrieving the getLastThreeSongs played by a specific user. There was another follow-up mentioned by the recruiter post-interview, but I didn't get time to address it during the session.

Round 2 - Hiring Manager

This round focused entirely on general behavioral questions, assessing my fit and experience.

The next 3 rounds happened in the office.

Round 3 - DSA

The challenge here was to design a Key Value Store. I had to implement get, set, and deleteKey methods. The first follow-up introduced support for transactions (begin, commit, and rollback). I immediately clarified if nested transactions were required, and the interviewer confirmed they would be for a subsequent follow-up. I spent a considerable amount of time implementing the single-level transaction support. The second follow-up was to support nested transactions, but unfortunately, time ran out before I could tackle it.

Round 4 - DSA

This round focused on designing an Excel sheet. I needed to implement set (handling cell names like A1 and values including simple numbers or formulas like "=9+10"), reset, and print (showing both raw and computed values). The follow-up extended the set functionality to support values that referenced other cells, such as "=A1+10".

Round 5 - System Design

The final round was a system design interview where I was tasked with designing Google News.

Interview Questions (5)

Q1
Design Music Player like Spotify
Data Structures & AlgorithmsHard

Design a Music Player like Spotify with the following methods:

  • int addSong(string songTitle); // add a song to your music player with incremental song ids starting from 1
  • void playSong(int songId, int userId); // user plays a song that is present in the music player
  • void printMostPlayedSongs(); // print song titles in decreasing order of number of unique users' plays

Follow up:

  • vector<int> getLastThreeSongs(int userId); // get last 3 unique songs played by a given user
Q2
General Behavioral Questions
Behavioral

This round focused on general behavioral questions.

Q3
Design Key Value Store with Transactions
Data Structures & AlgorithmsHard

Design a Key Value Store with the following methods:

  • string get(string key);
  • void set(string key, string value);
  • void deleteKey(string key);

Follow up 1: Support transactions - begin, commit, and rollback. I spent a lot of time coding for one level of transactions.

Follow up 2: Support nested transactions. No time was left to address this.

Q4
Design an Excel Sheet
Data Structures & AlgorithmsHard

Design an excel sheet with the following methods:

  • void set(string cell, string value); // cell can be A1, B2. value can be like "10", "1" or even excel formulae like "=9+10" and "=-1+-10+2"
  • void reset(string cell); // reset the cell
  • void print(); // print all the cells along with their raw and computed values

Follow up: Extend solution to support values like "=A1+10" where A1 is a cell name.

Q5
Design Google News
System DesignHard

Design Google News.

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!