The process is 5-6 steps: recruiter, head of engineering/team lead, tech assignment, tech interview, and culture fit interview. I failed the Tech Interview.
There is a discrepancy between the tech assignment and the interview expectations. For instance, the assignment suggests that an imperfect solution in Ruby on Rails is acceptable, but in the later tech interviews, a specific approach is preferred. This misalignment can be confusing and may need to be addressed. I got lucky; I did somewhat of what they wanted.
I did not have a nice experience in the tech interview. I was told it was just to showcase the assignment, but it was actually a live coding session. If I had known that, I would have re-read the assignment, which was now two weeks old, and prepared myself with good questions, and not the least, mentally. I have worked previously to re-design databases, and a lot of their questions are about associations and tables. They asked the questions in a misguided way and left information out. I asked for clarification multiple times and had to guess what they meant, and I got comments on what they wanted afterwards, so no hints. Some of their questions were also asked in a judgemental way. I already knew afterwards I had failed. I felt misled as if the questions were just asked differently or the devs interviewed me had been a bit more open, the outcome would have been different.
I have interviewed people myself, and I would give hints, have more guided questions and not let the person draw models on the whiteboard and stuff when I know the person is not going the right way.