Wednesday, September 10, 2014

Learn Unix and Stand Out From The Rest

Before I became a network engineer, I became experienced using multiple flavors of Unix.  At this time (the 1990s) Windows machines could barely get on the Internet (anyone remember Trumpet Winsock?)  As my career progressed, I noticed that I was one of the few people on the team that understood Unix.  At multiple companies, management tasked me to administer the Unix boxes running our network applications.  I even got hired at a company as a network engineer because they needed my Unix skills.  Therefore, here are a number of reasons why you should learn Unix.

Unix as the platform of choice

In many companies Unix systems exist to support network operations.  Here are just a few applications where Unix is the favored platform:

  1. Trusted hosts / jump boxes
  2. RADIUS / TACACS / Cisco ACS
  3. Syslog
  4. Traceroute / MTR / Ping
  5. DNS
  6. SNMP traffic monitoring applications (MRTG, Cacti, Observium)
  7. NMAP
  8. RT
Many network engineers will only learn a half-dozen commands to do the bare minimum. However, if you want to get ahead of the pack, a background in Unix will allow you to quickly navigate network environments that run Unix.  Knowing how to use and configure these Unix applications will help you do a better job of maintaining your network.

Management loves hearing "free" or "cheap"

Many Unix network applications are open-source and therefore free or cheap to use.  While your company could buy very expensive network applications (e.g., SolarWinds), you can impress your management by showing them how open-source tools will save the company money.

Quickly learn Unix-based network operating systems

Multiple network operating systems use Unix under the hood. To name a few:

1.  Juniper JunOS
2.  Arista EOS
3.  Netscaler NOS
4.  Checkpoint IPSO

While they all have a CLI that makes their devices easier to use, sometimes you have to go down to the Unix command shell to troubleshoot and get the information you need.  If you already know Unix then troubleshooting under the hood becomes a piece of cake.

Scripting and automating tedious tasks

Unix scripts are valuable tools to automate tedious tasks.  Scripting makes you more efficient and largely eliminates human error when configuring networking devices.  Two of the main uses of scripting tools is to do bulk configuration changes and configuration backups of your whole network.  Instead of doing the same grunt work repeatedly, scripts allows you to concentrate on more important projects, like deploying the network in your new data center.  

Career advancement

Having Unix experience will set you apart from your coworkers.  Using scripts and network tools to make your job more efficient is a huge plus to managers.  These managers in turn will usually give you more interesting tasks.  Becoming more valuable to your employer increases your job security and will give you a greater chance of getting a promotion or getting a bigger raise.

Recommended reading

I learned Unix the hard way because "back in the old days we didn't have all these newfangled easy-to-read books that you could two-day Prime on Amazon."  What this dinosaur had to do was go through the three main system software directories, /usr/bin, /usr/local/bin, and /sbin and read the man page for each program.  Very dry reading, but I did learn a lot.


UNIX and Linux System Administration Handbook by Evi Nemeth


UNIX Tutorial for Beginners by Michael Stonebank

The FreeBSD Handbook by The FreeBSD Documentation Project

The Debian Administrator's Handbook by Raphael Hertzog

1 comment:

  1. Hi friends,This is Christy from Chennai.Thanks for sharing this informative blog. I did Unix certification course in Chennai at Fita academy. This is really useful for me to make a bright career. Suppose if anyone interested to learn Unix Course in Chennai please visit Fita academy located at Chennai.
    Unix Training