A technical job is going to be able to be broken down into a few categories. Many of these overlap, and I understand it gets confusing, but here’s a few quick breakdowns:
Job types in tech fields:
Administration world… (Key words: Microsoft Windows, Linux, Unix, HP-UX, AIX, Solaris, Sun, Active Directory, Virtualization, OpenStack , AWS, VMWare, LDAP, Apache, IIS, LAMP… )
IT – These guys (or girls or people in general. I use the term “guys”, as in: “Hey! Yous’ guys! I’m walkin’ here!”, no gender stereotyping, please…) are the guys that run in-office computer systems. Typically this means e-mail, logins, local security, pc updates/upgrades, etc. Basically they are who you call if your laptop has issues. Some of these jobs can be administration, but typically it’s local to a PC (meaning laptop/desktop). Good reference = Tier 1 support, help desk. (Help desk likes to call themselves admins- don’t confuse that with actual administrators, see next…) Analogous to = mechanic.
Call Center/Desktop Support – This a specific area in IT that refers to handling of individual problems, tickets, or products. If the call center is for a software company, the person may answer questions about hot to install a product, or may be an internal call center that answers calls like, “my monitor is not working,” or, “my password has expired.” Depending on the environment, it could be very detailed, if you support, say, CNC machines, and a customer needs to know the minimum thickness that one can “rail a part to” while the next caller may ask about metallurgical or chemical specs for specific alloys, while the next caller asks where the cup holder is. Most call center have low level technicians working them, generally early career types, with more senior people choosing to go into management or deeper technical positions. Analogy varies = switchboard phone operator to high level mechanic – just depends on who answers the phone.
* Note: This is the single most common job posting I get, despite being way over-qualified for this role. This is what prompted me to write this article in the first place! If you can actually look at my resume, and think “he might be a good fit!”, then one of two things have happened. Either A.) Someone saw “computers” and sent a request, not really understanding the differences between roles; or B.) the tech economy has hit rock bottom, since these positions often (read: usually) start at under $20 an hour.
Administration – These guys maintain accounts, logins, upgrades/updates, etc. This may entail IT, but typically an Admin maintains larger networks, servers, offices, buildings, production environments, QA/Dev/other environments, etc. IT may be or have admins, but being an admin does not make you an IT person. Good reference = Tier 1/2/3 support, may relate differently to different companies. Tend to be early-to-mid career, but not usually entry level. Sometimes called Analysts. Analogous to = Master Mechanic with a degree, makes hot-rods; not usually working at the local Buick dealer (unless he’s in charge).
Engineering – Admin +. These dude/dudettes design and implement what the IT people and Admins do. They are the ones whose job is to make the decisions of when updates/upgrades are done, how they are done, who does them, and when they are done. They determine what-affects-what in a matrix of technologies that may intersect. They have years of experience and tend to be specialized but still well versed in as many technologies as possible. Good reference = Tier 2/3/4, Master Admin. Analogous to Electrical Engineer at GM, designing car systems.
Architect – Master Engineer. Designs whole environments. Develops vision for future use and paths. Good reference = Tier3/4. Analogous to : Designer at GM, specifically the person who designs each model year Camaro, etc.
Virtualization /Cloud Computing/Distributed Computing So *EDIT*…I’ve moved this up from a “thing to watch for” to an actual specialty, since it’s really blown up a bit in the last four years. Virtualization, Cloud and Distributed all essentially mean the same thing- Cloud just has a non-specific connotation that doesn’t necessarily apply to all virtualization though. (FYI: The “Cloud” in Cloud Computing simply means internet accessible. That’s really it. ) That being said, servers can be very powerful things. Often users don’t need such a monstrous device. It can be 10-50 times more powerful than you need. And cost way more than you want to pay. Smaller servers still take up space and power, so if you company has 10 groups that each need a server, 10 small servers may be way more expensive than that one monster server, and would use more power and be more costly in rack space than a monster. Virtualization lets you take a server, and make it pretend it’s really 10 smaller servers. You can use the pretend servers just like it’s stand-alone brethren. You can also quickly make exact duplicates of the virtual machines, if you suddenly need more capacity- or to spread the load across 10 servers, just in case one breaks. There’s lots of great reasons to virtualize. Cloud Computing is just a way of selling/monetizing virtual servers servers online. It’s essentially virtualization, but companies can do this without buying the big monster servers in the first place. Basically, they just “rent” virtual servers from companies like RackSource, Amazon (AWS), or Cisco (Okay…maybe not so much from Cisco anymore…I speak from experience there…) Some companies build their own “private cloud”, so they can “rent” space to internal customers, lightening the cost load to operate. (Keywords to watch for here, Openstack, AWS, Cisco Cloud Services, VMWare, VCenter, VSphere, KVM, Xen (Pronounced Zen), Hypervisor, Qemu, Virtual Box, Citrix, etc.)
Networking – These guys run, maintain, plan and build connections, not servers. They make sure servers can talk to other servers, the web works, email servers can talk to the right servers, communication security. Basically, if one computer or server or office wants to move data from one place to another, these guys handle it. (Keywords: Cisco, Lucent, Alcatel, Nortel, TCP/IP, IPV4, IPV6, Routing, Switching, Packets, Gateways, Wireless, Cat 5, Wiring, Cabling, Load balancing, F5, Big IP)
Storage – These guys are easier to identify…they do storage. Storage entails disks and storage arrays. They may be attached to servers, they may be attached to networks, but the primary function is holding data and keeping it safe. (Keywords: SAN, NAS, NFS, RAID, NetApp, EMC, 3Par, SCSI, iSCSI, Fibre Channel, Fabric, Duplication, Deduplication, Backup, Samba, Filers)
Database – DBA’s. (Stands for Data Base Administrator) These guys are also easier to identify, fewer keywords. They are a subset of programmers who specialize in Query Language- fancy term for database coding. There are different types of databases- relational, transactional, object-based, etc. (Keywords: Oracle, Sybase, SQL, MySQL, Postgre, Access, Hadoop, Big Data )
Security – Alright, these guys are a little reclusive. They can be physical security guys (doorpad, keypads, entry systems, loss prevention, etc.), server-based guys (user access, user admin, password sets, encryption, intrusion detection, malware prevention, etc.), or flat-out hackers (intrusion detection, security hole tester, etc.)- a.k.a. “white hats”, whose job is to hack into their own systems (or clients’ systems) and figure out what needs to be fixed/patched in order to prevent a “black hat” (bad guy) from cracking in and causing damage. Either way, the job is to protect company assets, physical and digital.
Managerial – Applies to any of these categories. I think you can figure this one out on your own…
This seems to throw people off. Operating systems are the backbone of any environment. Most envs are now multi-OS, so there’s likely to be Windows and Linux (or unix) in most shops. You almost never see Mac in server space, but they do exist. A good way to think of it is like the mechanic analogy: mechanics can be specialized in cars, motorcycles, big-rig trucks, airplanes, boats, etc. Just because you’re a mechanic does not mean you’re qualified to work on a 747 engine. Yes, they all work on the same basic technology, (fuel plus oxygen plus fire = go!) but the implementations are so vastly different, that one person is not likely to know more than a couple really in-depth.
Microsoft – The most common thing you run into in IT space, not as ubiquitous in server space . Windows can be split into two categories, desktop support and server support. A server guy usually knows desktop, but the other way around is certainly not a given. Desktop OS’s are Windows 95/98/ME (outdated), Windows XP(also outdated), Vista(OMG, you run Vista???), and Win 7/8/8.1/10. Server OS’s are Windows NT & 2000 (outdated) and Windows Server 2003/2008/2008R2, etc.
Most Microsoft guys are not familiar with Unix, Linux, or Mac, but you will find the occasional MS user that is an outlier. Typically, though, most people who work in one of the other OSes know Microsoft inside and out- most of us started out in Windows, or at least used it heavily at some point in our lives. If the job description calls for Windows work on a Unix job title, most candidates would probably be fine.
Unix – The granddaddy of ’em all. Unix has been around by far the longest. It is a derivative of some of the first operating systems ever built, but has changed considerably, having to adapt to newer technologies, just like everything else. Linux is a (kind of) fork of Unix, and Android is a fork of Linux. BSD is a fork of Unix, and MacOS is a fork of BSD. (Fork, n., a version of a software product that has been modified to such an extent that it can be recognized as a completely different product, often with new owners and new copyright rules.)
Common versions of Unix are Sun’s Solaris (sometimes mistakenly called Sun OS), the actual SunOS, HP-UX, AIX, SCO-Unix, Minix. Often you’ll see the term “Posix” or “Posix based”. That simply means any software that is Unix-like, which refers to all flavors of Unix, Linux, Android, etc.
Linux – This is a relative newcomer. It was invented in 1991, but really was developed into a serious server OS in the early 2000’s. It’s becoming very popular due to the fact that it’s free. (Yes, free.) Instead of being owned by a company, Linux is a community owned code set, that is open source. (Means anybody can use it for anything they want, in essence.) Companies like Red Hat, Novell (they make SuSE Linux), Canonical (Ubuntu Linux), and others can take the open source code and improve it in what ever way works best for them and run server environments with it, and sell service to support the software, usually without actually selling the software itself.
There is a desktop component to Linux, but it is much less widely used. Keywords to watch for: Red Hat, RHEL, SuSE, Fedora, Ubuntu (or anything with the word ‘buntu’ tacked on to the end…), CentOS, Android, GNU, Gnu-Linux, BSD, Free BSD, Minix.
Mac – Macintosh, Apple, Mac, iOS, OSX (pronounced O.S.-Ten) are all names for the Mac operating system. You’ll find very little in the server world, but it’s popularity in the desktop space is booming. Even more so in mobile devices. Modern versions of OSX are based on BSD, and very Unix-like, but has a graphical component that is significantly different from anything else. Mac guys tend to be Mac guys, and nothing else. Not always, but usually.
Other stuff to watch for..
Enterprise vs Office Employers with large server sets are what we call Enterprise level. Small offices, or local IT guys are Office level. One is not ‘higher” than the other, just Enterprise jobs involve large-scale servers, lots of users, lots of layers, and usually lots of silo-ing of work. People tend to get highly specialized. Office level guys have to be jack-of-all-trades, and often focus on day-to-day desktop and laptop support. Think Enterprise=Major hospital. Office=local doctor’s office.
Big Data This is a fairly new phenomenon- services like Facebook, Google, financial institutions often need to crunch a HUGE amount of data. Companies like Teradata and products like Apache’s Hadoop are developing ways to cluster computers together in a way to do what’s called Massive Parallel Processing. A large database may be 20-50 gigabytes. Very large might hit the terabyte mark (that’s a thousand gigabytes.). Big data does petabytes (a thousand terabytes/a million gigabytes) to an exabyte (a thousand petabytes)! Ginormous amounts of data. Think about Facebook- all profiles, pictures, comments, movies, links, notes, groups, and everything else has to be accessible at a moment’s notice. That’s a certified metric tonne of data.
Now, I just sat down and wrote this out off the top of my head. By all means, send feedback if I left something out, or if you need specific question answered- I’ll add it to the manifesto above. ?