So You Want To Be A GIS System Administrator?

I’ve been one of these for about 16 years. This essay is simply my experience. Speak to another GIS SysAdmin and there will be some overlap, and some unique and peculiar stories, I’m sure. I’m only hitting some high points. Comments are certainly both welcome and appreciated, as always.

Computers have been a part of my life since about 12 years old. My first computer was an Atari 800. My 800 had both the external 5-1/2 floppy drive and a cassette tape drive. My dad bought me a giant dot-matrix printer at a “going out of business sale” which printed on green bar paper. In those days, there were no “printer drivers” to speak of. One merely hoped the software would print in a format recognizable to the human eye.

Atari 800 8-bit home computer.

My first task was to pay my dad back for the computer. I did this by writing a program in BASIC to print mailing labels from a tabular database which I also had to create. And this was after spending hours reading manuals figuring out how to send data to the printer the printer could understand across an RS-232 cable. All of this was necessary because the printer was not a standard dot-matrix printer recognized by software of that era so I had to improvise.  This was about 1980 and I was about 12-13 years old. So, I’ve been doing technology for a while.

In high school, I programmed on Radio Shack TRS-80s. In college, I wrote programs in Pascal, FORTRAN, and C. In graduate school, I used C/C++, and scripted some stuff in ESRI’s Arc Macro Language (AML). I’ve had training in SQL (from Oracle), coded and supported web sites in HTML, and wrote some ASP code to help staff manage a database for our library of Landsat imagery. Along the way I had to learn some networking. My first year of being a GIS SysAdmin, I had to learn the ins-and-outs of IBM’s Star Network topology. Not a big deal, really, but I had no network experience at that point and IBM had their own network topology. The Star topology was far different than the competing ethernet/cat5 topology, and more annoying, honestly. Cards were expensive, and the network cable was coaxial cable; heavy, expensive, and a pain to run.

From 1992-1993, I had one of the best mentors. Frank was the GIS SysAdmin for the city I worked for. He now is an ESRI guru in Minneapolis, MN. I was an intern for a while, using my manual drafting and cartography skills to update the city’s giant mylar parcel map sheets and enter plat changes in the city database. Frank took me aside one day. “See these videos? Take them home and watch them. Then, take those books home and read them.” The videos were from ESRI, VHS tapes on how to “clean” and “build” these things called “coverages.” Very old-school GIS stuff. Learning about “fuzzy tolerances,” and whether one should choose “nearest neighbor” or “first.” I exercised in the city’s weight room and used the VCR to watch perhaps the most boring videos of my young life.

The city’s GIS Department was one guy, Frank, plus an intern – me. Later, I would be promoted and become a City Planner III (could have been “I;” I don’t remember ranking system, whatever the lowest rung was, that was me). The GIS Department ran on Sun Microsystem’s Sun SparkStation 1 and Sun terminals, running the Solaris OS, version who-knows. Solaris is Unix, and any Unix experience was the best thing that could have happened for me. Learning “duks” and “rm -r” and “ls -al” and the nuances of “grep” was all brilliant. Editing using “vi” was one of the best challenges, too. We didn’t use a graphical desktop, not graphic in the sense of today’s desktop. No, these were simply pretty command-line windows. vi ran from the command line, and it was temperamental. Every key on the keyboard was a understood by vi as a command. So, how did you type anything? You typed “a” to “add” (if my memory is correct). Then, anything typed thereafter was interpreted as characters. To end input, you tapped ctrl+~ (tilde). Again, my memory of this is fuzzy, but that looks about right.

My early days provided me a wealth of experience, but having a good mentor helps establish a good frame of reference, builds a solid foundation upon which positive learning and growth can occur. Frank always listened to NPR, too, providing good conversation fodder. Later, my experiences in the city would help me become immediately useful to my graduate department. Unix was alien to all of my peers and some of the faculty. That I could slip right in and start working on computers in both Unix and Windows environments meant I could focus on studies and not have multiple learning curves to surmount.

camilledevereuxtheraven2

I still have a box of unopened Jyhad cards somewhere.

All of this backstory is about experience. I bought books. There was barely email in 1992. I had a Compuserve and AOL dial-up accounts. I took apart the computers I bought. I put them back together. I obtained different operating systems and learned them to various degrees. In the mid-1990s, different flavors of Linux were becoming popular, Redhat, Mandrake, Debian. A friend and I hacked our computers to boot Windows, Solaris, and Redhat. We built our own home ethernet network. Mentors are great, and being surrounded by others who are also involved in complementary activities is a fantastic atmosphere. We were all hacking stuff, playing video games, playing CCGs, like Magic and Vampire: The Masquerade (a/k/a Jyhad).

After Steve Jobs died, I cannot recall how many times I heard, “Jobs was a testament to those who think you have to have a college education to be successful.” Such statements are blatantly unrealistic and insipidly short-sighted. Steve Jobs would have have been the man he was without a college education. That he never graduated with a degree is not the point. The point people seem to miss is so critical that missing this point essentially exposes a person’s lack of vision and their ignorance. Steve may not have graduated from Reed College, but he certainly surrounded himself with oodles of people who not only went to college, but graduated from college, some several times over. One cannot build a software empire with a collection of garage tinkerers. That is how Apple began but that is not how they achieved such remarkable success. Steve Jobs was not alone.

A college education provides a relatively safe learning and working environment. College provides ample time to explore and develop new ideas. The college environment provides opportunities to find like-minded people who are enthusiastic, motivated, and have time and energy to devote to augmenting creativity. After graduation, time is not your own. If and when employment is found, job duties carve away at time. Relationships carve away at more time. Family carves away at even more time. The years spent in college need to be used to enhance, to learn, to grow, and fuel creativeness.

essential sysadm

The first sysadm book I owned. The preface states, “Your job is about failure” or somesuch.

A GIS Systems Administrator is a cool position, honestly. However, there is one fault the job has, a deal-breaker for many. To be a Systems Administrator, one has to be able to handle failure. Failure each and every day. If you can’t handle failure, or cope with failure, then seek out something else. Daily, System Administrators deal with failure. Maybe hourly. Someone’s hard drive failed. A graphics card failed. A data projector failed. The network fails. A server fails. Map services fail to start. The software license manager fails to start. The plotter fails to plot the appropriate shade of blue. A user account fails. The mail server fails to send or receive mail.

Get the picture?

A happy day for you is when something doesn’t fail, or you go all day without seeing a user plugging your door frame.

“I can’t find my Word document.”

“I can’t connect my network drive to the server.”

“ArcGIS says it cannot find the license manager.”

“My computer has a blue screen with lots of white words on it. Is that bad?”

“Where did my Map Document go?”

“I sent my paper to the printer 30 minutes ago. Where did it go?”

“I thought I installed the software correctly but when I click on it, my desktop disappears.”

“I have all of these pop-up windows on my desktop. Do you think I have a virus?”

“We have to implement a directory structure in the three weeks we have remaining before school begins.”

“I know you just installed version 10 but 10.1 just arrived.”

“I hate to bother you, but none of the lab computers will allow anyone to login.”

If you think you’ll able to sit in your office and control your environment like Jean-Luc Picard does from his chair on the Enterprise, you are in for a rude awakening.

A GIS Systems Administrator has a job very much like every other Systems Administrator, except you have to have fundamental knowledge ( and some wisdom ) but how geospatial data and software is different from the typical software and data. A firm base is knowing details about hardware, servers, desktops, laptops, and today’s mobile devices. A firm base is being able to understand the differences between Intel i3, i5, and i7 generations of processors. A firm base is knowing the difference between RAID-0, RAID-5, RAID-10, and the newer generations of RAID. A firm base includes understanding how networks operate, types of physical and wireless networks, and the advantages to each.

The GIS knowledge is critically important because the vast majority of users are not going to be pushing around gigabytes of data. People use networks for pushing around Word documents and Excel files, for the most part. Perhaps big Powerpoint presentations with embedded media files. The vast majority of non-GIS users do not push around huge files. Therefore, the scope of knowledge a traditional sys admin might have is not precisely the same as what a GIS System Administrator needs. Nor far off, though. The ones I’ve met need to add a couple zeros onto the amount of data being pushed and pulled across networks. I remember one time, years ago, my area was responsible for about 80% of academic network traffic density, and that was simply from pushing data around. That was a very proud moment for me.

GIS users push and pull big data. We query thousands, hundreds of thousands, maybe even millions of records. GIS users push and pull aerial and satellite imagery, hundreds, if not gigabytes in size. Today, GIS is using LiDAR which is extremely dense and rich data. Last year, a faculty person wanted me to help her find a home for 300GB worth of LiDAR data for a single watershed in Tennessee. One person and one watershed, 300GB of LiDAR data! In the near future, Kentucky may contract a statewide LiDAR collection effort which could easy amount to 4+ terabytes worth of data, 4,000 gigabytes or 4,000,000 megabytes.

Depending on the employer, on the job, on the adoption of GIS within an enterprise, the amount of responsibility of a GIS System Administrator will obviously vary. My position has no doubt been impacted by “job creep,” the accretion of other responsibilities due to budget cuts or the willingness to assume more duties. For instance, I also teach World Geography, Map Analysis, and Weather and Climate. I also sit on a couple committees, both tech committees. One committee discusses the true nuts-and-bolts of our campus; the other discusses technology from an outreach and pedagogical perspective, i.e. “how can we reach students, keep them informed, and give them tools for managing their college experience, and what tech do we need on campus?” Again, depending on where the GIS System Administrator position falls relative to other similar positions, you might also find yourself part of the Help Desk, or Technical Coordinators Group. In addition to keeping the GIS moving bytes around, you may find yourself responsible for setting up, installing, and configuring new computers, desktops, laptops, tablets, etc. You may find yourself responsible for setting up and installing printers, plotters, scanners, and other devices. You may find yourself responsible for the care and maintenance of GPS equipment. For instance, I’ve had to completely disassemble two plotters to replace the carriage cable, and I’ve had to troubleshoot and replace components in our 36″ upright color scanner. Knowing some electronics and how a Volt-Ohm-Amp meter works can help.

As a GIS Systems Administrator, training others may not be noted on the job description but make no mistake – you will be training others. In all areas, offices, departments, or divisions the GIS Systems Administrator will run across people whose computer experience runs the gamut, from those whose shear presence in a room is a 100% guarantee of a complete hard drive crash, to those who eat, breathe, sleep, and imbibe Mt Dew as they furiously type out some homebrewed code for an iOS app they are working on in their spare time. A GIS Systems Admin may need to train other employees regarding the use of an ArcGIS app, the use of ArcGIS Online, how to integrate ArcGIS Online Maps for Office. Training on accessing GIS data may be necessary, such as how to connect to a SQL Server database instance to grab data for a map. Training more technical workers about the use of Python for automating map creation, or for running geospatial batch processes against data could be necessary.

Back in the day, I would train people on the use of an ESRI-specific programming language called, Avenue. I programmed an Arcview 3.2 application in Avenue I used for an economic development project I worked on for a number of years. My Avenue app would build unemployment maps from some tabular files I created first using Excel. Excel was nice for simply entering data. I would save the spreadsheet to a CSV file. The CSV file was input into a C program that would calculate underemployment estimates based on a model I developed. The output from the C program would then be read into my Arcview app, and my Arcview app would build some unemployment and underemployment maps for me, along with providing a way to overlay journey-to-work shapefiles. I was also an ESRI-authorized Arcview trainer for a few years. I did some coding in my early days as a GIS System Administrator. I also wrote scripts for doing chores in my Unix environment, and some scripts for chores in my Windows environment.

Today, I should code more than I do. However, my responsibilities of managing three labs, a small fleet of servers, 100+ users, and teaching between 5 and 7 classes a semester leaves me little time for coding. Coding has a prerequisite of a project to code for, a need, not a want. But, I do need to code more.

Coding, like writing, helps one break down problems into constituent parts. Coding requires organization, structure, logic, reason, and design. The more one codes, the better one should get at these traits, hypothetically. The application of the coding components I mention can then be applied to other non-programming concerns. In other words, think “flow chart.” One of the biggest problems I notice in society is people seem to lack the ability to apply a consistent set of rules to problem-solving, or lack a view of the “bigger picture.” Phrased another way, we look at a solitary concern with focused intent and forget to step back and judge the concern with a higher degree of critical thought. When faculty focus too much on the “buttonology,” for instance, what are we really teaching? How to push a button? What matters most, that a student be able to click through a set of instructions, or, that a student can understand the nature of the exercise, the end result, the over-arching theme, and be able to read the online “Help?” I hope you voted on the latter. A “button-clicker” is of no use to employers.

In small businesses or educational units, there is no choice but to let some things go. To say, “everything must be covered,” or some such is fundamentally unrealistic. Now, that is not to say anyone is off-the-hook. However in a small IT department, priorities must be established; anything not a priority is a luxury. There are only so many hours in a day, week, month, year, and kids get sick, people die or divorce, and Life Happens. In my case, my coding has taken a backseat to other ventures. However, I feel the pressure to get back into the Coding Milieu and help students learn to code a little. Being in GIS today, being able to code a little bit can go along way.

Job descriptions today for “GIS Systems Analysts,” or “GIS System Administrators,” or “GIS Analysts” are borderline insane. I wonder who writes them and what thoughts go through their head. Students hand me job posting all the time.

“Do you think I qualify for this?” they ask.

“Let’s take a look at minimum requirements,” I reply. “Hmm. Do you have any programming experience in Ruby, .NET, or Python? Do you have experience in Windows Power Shell and managing servers in a SAN, or WAN, or NAS environment? Do you have experience in managing accounts in an Active Directory domain? Do you have experience working on Cisco networking equipment? Have you setup SQL Server with SDE? How much SQL scripting experience do you have? Have you written any apps in ArcObjects, or modified ArcGIS Desktop with any ArcObjects code? How about FLEX or Silverlight? Have you developed any web mapping applications using either of those environments, or used HTML5? Do have experience in processing LiDAR, Landsat, and other imagery types? No, well, don’t be too hard on yourself. There are about 10 people in the United States who do all of these things. A person would need to be both a Computer Science major and a Geography major with 5 years of experience simply to get a call-back on this one. This is not an entry-level position.”

The above is not really an exaggeration. I have seen job postings on numerous job sites requesting pretty much the above as a minimum set of qualifications, not as an “ideal” set. Employers ask for the moon, at times, and I wonder who is writing these job descriptions. Do they already have someone in mind to hire and are simply going through the motions of satisfying their Office of Equal Opportunity. In a sense, on-the-job training (OJT) is about the only way a person might develop the above skill set. Then, when a position opens, a job description is written in accordance with the job skills of the person they desire to hire into the job.

Sometimes, though, other factors come into play. Employers go to trade shows, see exciting technology, talk to a bunch of vendors, then draw up a job description which covers all the bases. Only one thing, such a person in “real life” doesn’t exist. These people exist in other roles; they are Database Administrators, Webmasters or Web Developers, or the IT Crowd, the Network Administrators and Domain Administrators, who are keeping the servers healthy, the network functioning, and data backed-up. What some employers desire is a person who represents all facets AND can fluently engage with the geospatial technology inherent in Geography.

I’m typing this while I install ArcGIS and a suite of other software tools on a reference computer. I‘ve been testing freeware software this week for imaging my labs. Clonezilla Live is a free, open source, imaging solution much like the enterprise version of Ghost. Microsoft has a similar set of tools referred to as the Windows Automated Installation Kit (WAIK). In the past, Ghost served well but in my small department my budget for supporting Ghost beyond Microsoft XP evaporated. A few years ago, I learned and implemented WAIK successfully a few times. I never fully bought into WAIK simply do the number or requisite steps required to build a disk image. Clonezilla, from what I can tell, is precisely what I need, a simple piece of software that does one thing well – build a snapshot of a reference computer I can easily move to another computer and blow the image onto the new computer. Clonezilla seems to do that.

The time is 11.05pm and it’s dark outside. As a GIS System Administrator, get used to the odd hours. Sometimes, you have to be available for the humans when they need help. Sometimes, you have to be available for the computers when they need help. Despite the ruminations you might hear on Morgan Freeman’s “Through the Wormhole,” computers still need attention. But, until they are able to write their own code, build their own web sites, manage their own databases, process their own images, repair themselves, and keep their network ganglions from stressing-out, your job as a GIS System Administrator will be to do all of this for them. Enjoy!

PAX

For additional insight, read:

ESRI System Design Strategies

Citrix-based Solutions (ESRI White Papers)

Literature: GIS for Libraries

Hey; Thanks for taking the time to leave a comment! Your feedback is greatly appreciated!

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s