Is Coding a Requirement to be an IT Pro?

The Truth

One of the stereotypes I am made aware of is the requirement for Information Technology (IT) Professionals to be savvy coders.  This is something that has been around for a long time and stems from the Hollywood depiction of hackers typing a hundred words a minute into a command line interface (CLI) to break into a computer system.  This fallacy is not how most hackers break into systems (within 30 seconds), nor is it a requirement on how to be technically proficient as a professional in IT.

The majority of technology professionals will require familiarity with different applications and understand how they interface with other applications.  Gaining some degree of education either in college or some online class to get a lot of exposure is definitely beneficial.  There is also a lot of truth to the fact that the majority of the internet runs on Linux.  Most major companies use some version of Linux (most likely either Apache [apache.org] or Red Hat [redhat.com]) such as YouTube, Netflix, and many more organizations.  Although Linux is a key back-end system for most major organizations, the front end is where the money is made.  Microsoft is still king with its different versions of Microsoft Server and using Active Directory to manage all of the profiles with Exchange Server being utilized to handle in house company email.  Even with a coding background, the Microsoft Windows interface does not require coding to understand how to use these systems.

If you are a specialist in one of the other types of computer operating systems or system administrator products, most of them have a graphical user interface (GUI).  A GUI negates the requirement for the specialized user from needing to know the specific commands required to make the equipment work.  If you are using a computer, you are running applications (programs) that interface with an Operating System (such as MacOS or Microsoft Windows) and how that program runs is not a concern of the end user.  Even if that end user has additional permissions to set up accounts and how those programs are used by end operators.

Coding Does Help

Now that I have stated that it is not a requirement to know how to code, I will say that understanding how programs are made does have its advantages.  Anyone who has spent hours on end developing a program to learn the importance of attention to detail as well as why systems crash when not properly tested can better help their operating teams when something goes wrong.  This also builds an appreciation for system testing before putting developed capabilities into operation.  The sharing of this understanding is part of the reason for the rise of Development Operations as this is the inclusion of the development team of an application with the operations team to better flush out the “kinks” so that tests occur in an iterative process to get a more policed program into production sooner.

What to Learn if I Did Decide to Learn to Code

In today’s environment, the fastest growing coding language to learn is Python (python.org).  Originally released in 1991, Python has surged in popularity since the mid 2000’s.  This is primarily due to its universal applicability to work across all Operating Systems.  The ease of use across platforms makes this an undeniable number one recommendation.  Additional recommendations include Java (which was strong in the mid 2000’s and has held onto relevance), JavaScript for the flexibility in use on webpages, and C# due to the Microsoft Visual Studio adoption of this programming language.

And then there’s Linux

Previously listed are the languages if you desire to develop program applications.  If you want to take that level of system administration to the next level, it is strongly recommended to learn Linux command line interface commands.  Linux is an operating system that has a wide range of applicability that were mentioned at the beginning of the article, but this is not a programming language, just and interface that is not point and click.  There are recommended versions of Linux that are recommended if you want to ease into learning the pros and cons of this alternate operating system.  The most highly recommended version of Linux for beginners is Ubuntu (ubuntu.com) due to the larger community of support for an Open Source OS.  Open Source means that it is freely available, and the source code is able to be edited by those with knowledge and skill to modify how it works.  This is unlike Microsoft Windows and MacOS which are set by the developing companies with a set type of modification options.  The editor’s skill level is expected to be intermediate to advanced, as Operating Systems interact directly with the hardware and any missteps with changes could cause significant issues with the operation of the computer.

The Bottom Line

To become an IT Pro it is not a requirement to learn to code.  After spending some time within the technology profession, if you decide that you want to pursue a career in the coding specialty, there are a large number of options to support your decision.  Whether you are creating applications or building the next great website, coding can be an option for you.  Just remember, that it’s not a mandatory option.