Last December, I got an email from their recruiter asking me if I was interested in Canva. I was glad to give it try.
The first round is the coding interview. TBH, I didn't do very well but I could think of a better solution - `Interval Tree` but I couldn't remember too much about details. After the interview, I found I had just implemented IntervalTree based on RedBlackTree 1.5 years ago. Anyway, I still had the chance to move on to the following interview: 3 Technical interviews + 1 management interview.
I had these interviews last month. Overall I love these technical interviews as they are very practical. I screwed up in one of the coding interviews. Other feedbacks were all good. Particularly, I made a very very stupid mistake. Basically, I have to implement something with the native dom event. I just need to get the input value when the event is triggered. But I was using `KeyDown` instead of `KeyUp`. So I couldn't get the value correctly, I notice the problem and thought of a workaround - using the timer. The interviewer was not satisfied with it. He reminded me of using another event. I tried `KeyPress` but I didn't try `KeyUp` as at the time I thought I was using the correct one. I wasted a lot of time on that and felt the reminder from him was not helping at all but made me more nervous.
When I have more time to reflect on that interview, I think I should be able to notice that stupid mistake very quickly because I understand what happened.
Maybe sometimes I lack a bit of luck. That day I had a headache and took some painkillers caused by Covid-19 before the interview. My mind was gone blank under pressure.
I could get instant feedback after the interview.
BTW, I had an unsuccessful interview with Canva 4 years ago. This time the interviews were not that challenging as I was not asked to implement Virtual Dom.