I was approached on Linkedin for an introductory call to get an idea about the product and available roles. After this call, the recruiting team started off the interview process.
There were 4 rounds:
1) Data Structures and Algorithms (Coding round) - This was a more like a pair programming round. I was provided a real-world like problem and not a standard leetcode style problem.. I could use my own IDE and any relevant tools that I use in my day-to-day development. Overall a pretty solid way to conduct a coding interview.
2) Debugging and Troubleshooting Round - This round was on coderpad where I had to debug an issue in a piece of code and then optimise the overall performance of that code. Fairly standard 45 mins interview!
3) System Design Round - This was a standard system design round where I was asked to design a particular component of Sense itself. I was able to provide multiple approaches with tradeoffs for almost everything. I personally felt that I performed best in this round.
4) Cultural Round - This was a value fit round with the CTO where I was asked some non-technical questions on my work.
Later, an additional call was scheduled with the MD for India office. In this call, we had a deep dive on my projects at my current org and some value-fit questions.
I was finally offered a Senior Software Engineer role at Sense. The turnaround time from recruiting team was quick.
The overall process was very smooth. The entire process felt more like a conversation than an interview and I thoroughly enjoyed the process. All interviewers were very helpful and did their best to educate me more about Sense and the overall company culture. I liked the company and I was looking forward to accept the final offer but had to decline it for personal reasons.