Contacted by recruiter, had phone screening with her, matching my profile. Then technical phone interview with Tech Lead(using coderpad). Clearing that, Onsite[Design/architecture/modeling, Product discussion, Technical and Coding]. The coding part was very interesting. They asked me to code in a language I've never used: Swift. They had an iOS engineer who did pair programming with me to accomplish that. It was a very refreshing experience.
What I want to explain here, is how I was given the reject. In my experience with other companies, if you're rejected, they just ignore you- never bother contacting again, and if you pester them- they will send an informal reject mail.
Climate was so completely different that it was mind-blowing. The recruiter contacted me, scheduled another phone call. Went in detail the feedback from each interviews I had. Explained they were looking for someone in a lead role, a bit higher than senior role. This was the first "you're rejected" conversation I had, that I came out happy.