I am currently a Master's student at one of the top Canadian universities. Before pursuing this, I worked for 4 years as a Software Engineer. I am finishing the program and interviewing aggressively in Toronto these days. Most of the interviews would pair me with another engineer (sometimes a fresh undergrad) for an hour long live coding session. Although I have been practicing and I am generally good at algorithms, I tend not to perform well in these sessions as I feel too much pressure. On the contrary, I have almost always previously performed really well in take-home assignments and landed the opportunities that I had sought earlier. That includes all my previous companies including Shopify.<p>I personally feel that live coding sessions are an unfair way to evaluate candidates. For example, I have contributed to open source before such as the following:<p>- [2016] Shopify Sarama Kafka client: https://github.com/Shopify/sarama/pull/655
- [2014] First open source library that I wrote in undergrad: https://github.com/mrafayaleem/gdx-sqlite<p>Written blog posts that explains my understanding of working with large systems. Most of them are linked at https://mrafayaleem.com<p>Every rejection that I get due to a failed coding interview session, it just makes me feel that the process is unfair and throws all your past endeavours / contributions out of the window. No matter how much you push yourself on your own time and learn, showcase and contribute towards open source or tech community in general, it doesn't make any cut unless you pass the coding interview.<p>I would be glad to learn your thoughts on this.