December 20, 2009

Day 20 - Becoming a Sysadmin

This article written by Ben Cotton. Editor's thoughts: This may seem like an odd choice of content, but sometimes it is as important to know where we came from as it is to plan where we are going. Did you choose systems administration, or did it choose you?

This post was inspired by my brother-in-law asking me what seemed like a simple question, "how do I become a sysadmin?" It turns out the answer is not so easy.

The title, "systems administrator," is sufficiently vague so as to be completely useless as a description of one's job duties. I've written in the past about the variety of tasks a sysadmin might encounter in a given day. With such a range of duties, it should come as no surprise that there's more than one path to becoming a sysadmin. Knowing a wider sample of individuals would better capture all the possibilities, so I posed a simple question to respected colleagues and to the community at ServerFault: how did you become a sysadmin?

It turns out that very few people dream of becoming a sysadmin as a child. Most sysadmins got their start by combining an interest in computers with another interest or skill. The combination isn't always intentional. Some people just happened to fix the right person's computer one day or got saddled with systems administration on top of their regular job duties. For others, it is the natural next step. An experienced developer who no longer feels like developing is often a great candidate to maintain the systems that the developers use. Many others move up through the ranks, starting out at the help desk and gradually gaining knowledge and responsibility. One person's career path even made a brief stop as a strip club bouncer.

For many people, myself included, there was little formal training in computers. My degree is in meteorology, and I know of several people who got started in the sciences or engineering. The reason for their success is two-fold. In academic environments, it helps to understand the science behind the work the users are doing. The other reason is that scientists and engineers are trained to think a certain way - to approach and solve problems in a logical and systematic manner. The fundamental job of a system administrator is to solve problems or anticipate future problems, so having a scientific mindset is a strong asset.

So if formal training in computers isn't necessary to become a sysadmin, what is?

The willingness to learn is key. A successful sysadmin spends a lot of time learning, whether it is about new software, new hardware, new processes, or USB missile launchers. If you want to become a sysadmin, the first thing you need to do is to start learning. The learning can be accomplished in many ways. Formal education, in the form of classes or vendor-provided training, can be very valuable. Learning at the shoulder of someone more experienced provides some gaps, but gives you knowledge that can only come from experience. And of course, there's self-education. The bulk of my early learning came from tinkering with (and breaking) my own computers, and by reading "___ For Dummies" books. It's amazing what you learn when you have to fix your mistakes.

So what do you need to learn? Everything. I won't get into the technical skills, because those will vary from position to position. I mean, you might need to know how to set up an Exchange server, or how to tune NFS performance, or how to manage a print server, or...well, you get the idea. To really be a successful sysadmin, you need to learn some indispensable, if tangential, skills. Technical documentation may be the most important skill for sysadmins, because you will at some point forget every important piece of information that you need to know. Writing documentation for users is also invaluable, especially if you want to spend less time answering questions. Project management, personnel management, and budgeting skills also come in handy.

Armed with all of this knowledge, you're ready to become a sysadmin and find out how much you don't know (hint: no matter how much you know, there's always more that you don't). Getting the first job is the hardest, and you might need to start out doing non-sysadmin work. Help desk support, programming, or anything else that gets you in the door gives you the opportunity to start learning new skills and taking on responsibilities. The only common theme among the answers I received is that there's no common education, minimum skills requirement, or career path. Each sysadmin path is unique. I'll leave you with a few of the most amusing quotes:

"I think I did something horrible to someone in a previous life and this was my punishment. Anyone else feel like that?"
"Enlisted in the Army for a completely unrelated job. Made the mistake of fixing the commander's email. Voila! I became a sysad."
"I am a sysadmin because one beautiful summer day, I found a computer laying in a field."
"Why would someone want to get into this job? I strongly suggest he get into driving heavy machinery. That's what I'm gonna do when I grow up."

Further reading:


Garp said...

I took the Help Desk route, as such. Desktop & some server support straight out of high school, but company outsourced most of it's IT work to a third party, I acted as a go between whilst trying to do as much as possible.
Then on to straight Desktop support, picking up Novell server and some Linux server stuff along the way before moving on to a webhosting environment where I plunged into Linux & FreeBSD with a passion.

Apart from the free & open source aspect of Linux / FreeBSD, which I consider important, one of the main reasons I love this is I'm back at the command line. I love using a command line, it's integral in the OS experience for me and always has been since my first computer (Sinclair Spectrum 48k.) I love getting my hands dirty in a metaphorical sense, and find I learn shells and such like with relative ease.

Usually I pick up skills because I see a need for it. For example I've learned a lot about MySQL over the past 4-5 months because we need a DBA at work. Main sources are books, blogs and google searches. It's soon clear who knows stuff and who doesn't (e.g. Percona, OpenQuery etc. in the Do category.)

Andrew from Vancouver said...

If you work at a small company and you monkey with a computer at home, boom, one day you're the sysadmin.

Clean a mouse, open the printer, get this email profile working over there, adjust the file permissions for the Cute Temp, install Office, burn a CD, reboot the server.

Nifty, you just touched a server.

Upgrade the RAM, install the Service Pack, buy a new disk and sit on the consultants' elbow as they do the work. Write it all up and report it.

Now start on DHCP, on name resolution, and get that other office connecting to this one, ok? Would a Cisco work? How much do those cost? Is the network hub good enough, is it configured, and how much is a new one? And the cabling?

Somewhere along the line, it was smarter to be a sysadmin rather than the office worker who did all the stuff so your department didn't have to wait for IT.

That's pretty close to how I started to be a sysadmin... by degrees, not By A Degree.

ZZamboni said...

One of my favorite sysadmin quotes is from an old Usenix sticker my wife (who is also a sysadmin) had:

"It's a dirty job, but someone told me I had to do it."