Today’s IT landscape if full of software defined marketecture, and lore of a dystopian future full of network engineers that do nothing but write code. But in reality, there are plenty of actual reasons you should be learning programming, or at least some basic scripting. For many network engineers programming is not new, we have all been hacking together shell, Perl and Python for a VERY long time. While the requirements in the future may change, today it is not necessary to become half network engineer half software engineer, but learning the basics now will keep you in the know. Learning the basics of logic and loop statements will not only help you speed up day to day tasks, but it will help you understand other languages as you expand your knowledge in the future. So, here are my top 10 reasons I think you need to learn scripting.
1: Automation can save you time
Writing a script for common / repetitive tasks can save you a staggering amount of time. Over the years I have written hundreds of scripts to aide in everything from Data Center VLAN/SVI management to banning/unbanning MAC addresses from multiple wireless lan controllers.
2: Scripts keep things consistent
When you want identical configuration across multiple devices, a script can ensure that happens every single time. Interface descriptions, VLAN names, or even things like keeping port-channel and vPC ids synced.
3: The knowledge is portable
As you continue to learn you will find more and more uses for the skills you pick up. To this day I still use the same “tricks” that I picked up 20 years ago to speed up tasks that I perform. From bash for loops to iterate through lists of data, to filtering with grep, or using cut or awk to segment it, I use these things nearly everyday to deal with whatever data I’m sorting through.
4: It’s not as difficult as you think
Many of the one off scripts that I write can be simplified into a single line. If you understand tools like grep, awk or sed, you’re already on the right path. If not, start exploring the tools that are built right into bash. (Which is available from MSFT for Windows 10 users)
5: If you don’t learn these skills, someone else will
These skills are not only valuable to you, but to your future employers. Our roles may or may not shift in the future, and we could end up in a situation where those without the proper skill set are left behind.
Network engineer currently servicing the enterprise data center market. I started working on networks in the ’90s and still feel like that was just a few years ago. Jack of all trades, master of none; I love to learn about everything. Feel free to ask me about photography, woodworking, nhra, watches, or even networking! — For feedback, please leave a comment on the article in question, and I’ll gladly moderate it several weeks later. For everything else including fan mail or death threats, contact me via twitter.