Interview comprised of 4 rounds :
Round 0 : Online assessment : Easy medium 3 questions.
Round 1. Problem Solving / LLD round :
It was a very tricky question as interviewer did not mention question clearly. Had to ask multiple question to get the clarity. When asked weather emphasizing on LLD or problem solving , mentioned need production ready fully functional code.
Question boiled down to : Implement a functionality to find the number of requests (count) a server is receiving based on timestamp in cronological order for given input.
For example find the number of requests recieved in last n minutes. Where n can be anything . It was more around how we design the datastructure to perform efficient querying of time series data.
Note: Concurrency had to be handled in the code and should be easily extensible.
Round 2. Managerial / project discussion round : Interviewer was very senior folk and emphasized on past projects and techincal choices made.
Round 3. High Level design round : Design distributed key-value store system which is highly available. ( More like dynamo DB)
Round 4. Behavioural round ( Internally they refer this round as bar raiser for cultural fit).
Entire process took around 2 weeks and offer was rolled out the very next day after final round of interview.
Note: Currently Careem is on Hiring freeze with latest aquisitions and org restructuring.
Compensation : https://leetcode.com/discuss/compensation/2394574/Careem-or-SDE-2