Rippling SSE Round 1

rippling logo
rippling
· SDE II
February 5, 2026 · 22 reads

Summary

I interviewed for an SSE role at Rippling. I was presented with a multi-part coding question about building a voting system for articles and managed to solve two out of three parts, which was sufficient to clear the interview.

Full Experience

First Round (filter) for SSE at #Rippling.

Rippling provides use of AI(optional). So I told interviewer that I will not use AI tools. I was expected to solve three parts of the below question but was only able to solve 2 parts. Still was able to clear the interview.

Interview Questions (1)

1.

Article Voting System with Vote Flip Tracking and Analytics

Data Structures & Algorithms·Hard

You are building a voting system for articles.

Part 1

The system supports adding articles, and users can vote on them using upvote or downvote.

A user may change their vote on the same article later. A vote flip is defined as:

  • user previously upvoted an article, and later downvotes it OR
  • user previously downvoted an article, and later upvotes it

You need to support the following requirements:

  • For each user, store their latest vote for every article they have voted on.

  • For each user, return the last 3 unique articles where the user performed a vote flip.

“Unique” means the same article should not appear multiple times in the last 3 results.

The order should reflect recency (most recent flips last or first — interviewer usually expects most recent first).

Additional constraints: Articles are created with increasing integer IDs (starting from 1).

Assume all articleIds passed into vote methods are valid.

Required APIs:

  • addArticle(String articleName)
  • upvote(userId, articleId)
  • downvote(userId, articleId)
  • last3Flips(userId)

Part 2 Extend the system to provide analytics:

  • For all articles, return them sorted in descending order of score, where: score = (#upvotes - #downvotes)

  • For every user, return: the last article they voted on

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!