Wednesday, September 5, 2018

Networking professionals - how do you prepare for coding questions during the interview?

I have been working with Python for quite a while and when it comes to writing a script that can pull some data off F5 API, or send some commands to Cisco switch via SSH, or when I need to modify some Ansible module - I can do it without any significant issues. It's probably not the best or cleanest way and I do rely on Google's help, but the end result works and tends to be fairly reliable.

However I have already had a few interviews with different companies where in the very beginning of the process I am being tested on my coding skills with questions like "write a function to flatten a list, while maintaining its order". And while the task is not particularly hard, I may still end up taking 5-10 minutes to come up with an answer. And then I may get asked - can you do it in a different way (in example above - can you do it without recursion?) And I often times don't have an answer for it.

The reason for such a lackluster performance is simple - if in my code I need to flatten a list, I just google it, copy-paste an answer from stackoverflow, verify that I can understand what it does and that it works properly - and go on with writing something that actually has value. And while I have taken some programming courses in school that went over these basic algorithms, I don't quite remember them well.

So the question is - what's the best way to prepare for these types of questions during the interview? Are there any courses that you could recommend for a good refresher of basic algorithms and maybe some data structures or what else is common to ask in the programming interviews? Or maybe you have some other suggestions?



No comments:

Post a Comment