NOTE: As per HR, there are only two levels in Software: Software Engineer, and Principal Software Engineer. I applied online. Following rounds: [x] 30 minutes with Hiring Manager [x] ≈1 hour coding interview. [x] ≈1 hour design interview. [x] 30 minutes product sense ----- Got the rejection email here, but they had 2 more rounds ---- [x] Behavioral [x] Conclusive round with Hiring Manager. The first round with Hiring Manager was more informal, just going into my past experience and details about the job vacancy. The coding round is Easy, this is simply a log-parsing and does not require prior LeetCode practice. The design round is where I got knocked out (I think). The problem statement is fairly simple: "Design a REST api for ML model" (using LucidSpark drawing tool). But the expectations weren't that obvious. The interview isn't being conducted as a standard design interview, and instead I should have read more about the interviewer's background and focus on those areas instead. I see that another candidate received a positive offer during the same time window when I interviewed. S/he used a slide deck (instead of using LucidSpark) for the design round. That's a better idea, instead of letting the interviewer drive that round, this would have given me more control over the discussion. Product sense: Like a regular product-sense interviews. What can you improve, or a feature, how would you measure the success of your proposed ideas, etc. Overall, my experience was positive. Assuming that I am right about the Design Interview results being the cause of rejection, I still think that I should have prepared better. Not the design part, the human-interview part. They're a startup, and the interviewers may have their own quirks, better prepare thoroughly. Anyway, it was a sad day; I really needed this job and I feel that I could've passed their evaluation criteria. Good luck to all other folks interviewing with them, this company has a good opportunity ahead of them if they play their cards right.