There were three parts to the interview process after submitting the application:
1) Phone interview - with the recruiter asking about Why HubSpot, salary ranges, skills/experiences and answering questions you have
2) Coding assessment - just be sure you know your REST API calls. You'll be given 3 hrs to complete it. After that, the recruiter reached out to me and scheduled me for an onsite interview.
3) Onsite interviews (virtual due to COVID-19) - 4-1x1 interviews with other software engineers and the director of the org you're applying for. These were all virtual via zoom. One was focused on coding, one was system design, one was database design and then the one with the director of the org is purely behavioral.
The overall process was relatively smooth. HubSpot was pretty accommodating with my interview schedule because I was working full time. The recruiter was very friendly. Although, I did ask him to forward along my thank you notes to my interviewers immediately after my interview, which I don't think he ever did. Not sure if it would've made a huge difference, but still a bummer and I really wanted to thank everyone for their time.
Everyone was pretty friendly and engaged in the interview. The only one that seemed unengaged was the director of the org. He was super distracted during the interview (glancing at different monitors when there's a notification sound) and this is a behavioral round so really easy to tell because I'm literally focused on talking to him and looking at his video screen. I also felt as if he was uninterested in me as a candidate to be honest so I'm not really surprised I got the rejection. I'm also saying this because they took down the job posting that I originally applied for almost 2 weeks before my interview so I'm assuming here that they found a good candidate and wanted to see if I could beat that, guess I was not as impressive.
My only other negative feedback is on the system design and database design interviews. I felt like the interviewers were more interested in seeing if I got to the prescribed answer they were looking for instead of how I was thinking. I was more into discussing trade offs of different possible designs, but instead felt more like I was quizzed on the design they already had in mind. Like for example, in the database design, I had to write up some SQL query for some of the database design and as we were wrapping up, I didn't finish, but the interviewer shared the solution with me and both answers did the same thing in different ways, but I was told I was "close". I thought it was more inefficient than the answer I had came up, but I only saw it for a brief 3 min so I could be wrong. I had a system design interview with Amazon and got an offer so maybe both companies are just looking for different types of candidates.
I really like how transparent the company is, their mission and my interaction with mostly everyone so I'm rating this as an overall positive experience, but I do feel like there could be some room for improvements in the system design and database design rounds.