Ramp 2025 Online Coding Assessment for Applied AI Engineer Position
Question Details
This post was last edited by Anonymous on 2025-09-29 10:38. I applied for an Applied AI Engineer position at the end of September and immediately received an online assessment (OA) invitation. It was
Full Details
This post was last edited by Anonymous on 2025-09-29 10:38. I applied for an Applied AI Engineer position at the end of September and immediately received an online assessment (OA) invitation. It was a 3-day, CodeSignal platform, 45 minutes with only one question. Although I
passed smoothly in about 25 minutes, I received a rejection email on QQ before even finishing the OA. Here's my attempt to improve my luck: Given a string of timestamped requests, write a rate limiter. The limiter should decide whether to accept or reject requests based on the number of requests from the same IP address within a time window.
Input: timestamps (request timestamps sorted by time), ipAddresses (source IP for each request), limit (maximum number of requests that can be accepted from the same IP within a time window), timeWindow (time window length)
Output: An array where position i is 1 if the i-th request is accepted, and 0 if
rejected.
Example: timestamps = [1600040547954, 1600040547957, 1600040547958] ipAddresses = ["127.105.232.211", "127.105.232.211", "127.105.232.211"] limit = 1, timeWindow = 3 Output = [1, 0, 1] Since the input is already sorted by time, a sliding window + hashmap can be used. To record the legitimate request time queue for each IP address, the question isn't particularly tricky, but it's a free OA (Official Assessment). Good luck to everyone!
About This Question
This is a reported interview question from a ramp interview for a swe role during the oa round reported in 2025.
It covers the following topics: Array, Hash Table, Strings, Sliding Window, Queue, Sliding Window, Rate Limiter, Hash Table, Queue, Arrays .
Difficulty rating: Hard