I was contacted by a third-party recruiter for this job, and then BD's in-house recruiter asked me to submit an application, and the scheduled a phone interview with me and the hiring manager. I, then, had a phone screen with the hiring manager, and he asked me what I've done at my current job, and how I would solve certain problems they had.
Then, their recruiter scheduled an on-site interview for me with 3 people from the engineer team. They asked me about some NLP/ML problems as well as some software architecture related problems. Then, they scheduled another two phone interviews for me and two other senior members of the team who couldn't be there at the time. Phone interview questions were focused on my experience and my past projects.
After that, I provided them three references.
And then their recruiter (a new one) contacted me, and told me that the hiring manager wanted to extend me the offer. However, the recruiter herself advised me NOT to take the job, because at the time I was in the process of getting H1B, and considering all the risk of not being able to transfer my H1B over, she said she might as well not to write the offer letter to me. I was shocked, because if I didn't know all the risks, why would I apply for the job in the first place?
Then I talked to the hiring manager over the phone, and expressed my concern over the recruiter's behavior, and the mixed messages I got from the company.
After a couple more days of serious consideration, I turned down the offer.