This weekend I signed up for my first LeetCode competition. I thought it would be a fun challenge to experience and learn from. Full disclosure, I got utterly rocked by it. BUT, I did learn from my experience which is a great take away.
I started with a higher point problem, wasted too much time on it, couldn’t pass it (I thought I understood the deliverable but my expected outcome was not matching theirs). More than 2/3rds of the time limit passed while I was still scratching my head. I went back to the first problem (lowest points). I was able to finish it but I submitted 10 seconds too late. Total Score: 0. No buzzer beater for me.
- Maybe start with the first problem next time. (At least when it comes to LeetCode Competitions).
- White board.
- White board.
- White board? Yes. White board. I’ve started keeping a notebook next to my laptop for this purpose. After the first read through of the deliverable my first thought was “huh?”. I went straight for the notebook and started drawing out the different parts of the “puzzle”. Once I saw it more clearly I could think through the logic.
- Doing the competition felt a lot different than just doing problems on Leet Code or Code Wars. Having that time limit definitely added a little pressure. Also seeing the #1 Ranked person finish all the problems in 10 minutes was a pretty jaw dropping moment for me. But in a technical interview there are also time limits. I personally felt it was good practice in thinking under pressure and time management.
Also, celebrate the wins! I can honestly say I did not feel discouraged at all by doing the competition. I was able to attempt and embrace a harder challenge than I’ve experienced thus far in my career as a programmer. I learned more about myself as a programmer and can reflect on my strengths and weaknesses and think on how to improve them. To me that’s a win.