2023-12-22
Throughout my software engineering career, I've been through the tedious interview ringer on numerous occasions - and I've been spat out more times that I'd like to admit. Sometimes it's just the luck of the draw, but I can't deny that I've made some stupid mistakes under pressure.
Immediately after a failed interview, I'd almost always blame myself or doubt my actual skill. But upon reflection, I know I cannot value my whole professional worth based off a 20 minute binary search or scrabble solver implementation. I wanted to write a blog post, that I can update over time, laughing at some hilarious hiccups that have rewarded me with the dreaded "We will not be moving forward with your application at this time" email.
- I once needed to serialise some bytes into a buffer in order to parse it as a concrete type. I knew the incoming data was an int32, so I initiated a byte array of fixed size
maxint32
(first mistake). In an unbound loop (second mistake). For every TCP accept in a stream (third mistake). As you can imagine, it quickly ran out of memory. - This one is short but sweet, and I genuinely laughed out loud during the interview after spending almost 15 minutes figuring out the difference between
&&
and||
in anif
statement condition... - During a classic Leetcode medium DFS, I assigned a pointer to the next element instead of comparing it's equality. In a loop. So my traversal was going around in indefinite circles. A simple
x = y
should have beenx == y
.
Inevitably, more facepalms to come!