I applied online and the HR gets back to me and arranged the interviews accordingly. There are 7 rounds of face to face interview in total. 1. Opening interview with hiring manager 2. Coding interview 1 3. Coding interview 2 4. System Design discussion 5. Behavioral 6. Wrap up interview with the hiring manager 7. Wrap up interview with HR After the first manager interview, you will need to work on a take home assignment. Basically, you are simulating an MQ system locally, and you need to achieve the throughput of 2,000,000 inserts/sec under a multithreading environment. The solution, if you think it thru, would be pretty straightforward. I achieved 3,000,000 inserts/sec with my solution. There are no gotchas during the interview. For the 2 round of coding interviews The first one is to expand upon your take home assignment The second one is to create 10 threads, and generate number from 1-100; I thought I nailed the interview, but I still got rejected for unknown reason which is pretty depressing, I have no idea based on what, they are choosing their candidate. All the technical people interviewing is actually pretty nice except for the HR people which failed to make the promise again and again. Missed on the timeline of giving me results of my interview, ghosted me on providing me feedback. Everyone has been professional but not him.