Basic Required UNIX Skills?
xirlosan writes "I'd like to get a job working in a UNIX environment, be it programming or administrating UNIX machines. My question is this: What skills are absolutly 'must haves' and what other skills are attractive to employers when looking for a job in this field? I have my BS in Computer Science and have a fair amount of experience with Linux and Solaris, so I'm interested in what more I need. I looked for jobs at Monster, and there are so many skills the recommend it's hard to figure out what the most critical are. Any help would be certainly appreciated."
You might want to check out the Unix module to the SAGE certification. The cert was put together by sysadmins, and the junior level test is a good overview of the skills you'd need.
.@.
If you want to be a Linux / Unix system administrator, you first have to understand the vagueness of the term. An "administrator" is just someone who "administrates". You can either be behind a bleeding edge distributed system running on a huge server room crammed full of racked blades or you can get an easy job at a small company with 2 or 3 athlons that mostly take care of themselves. Any half-baked MCSE could do that.
/etc files and such things as the SNMP protocol, MIBs, and of course the latest, most buzzword-compliant, administration-facilitating apps...
You can have all kinds of sysadmins, really, but being a good one requires a lot more knowledge than just the OS. Of course as a junior admin you'll prolly be handling monkey-work such as backing up stuff to tapes or even CDs and other tedious tasks the real admins dont want to do. You will deal with the lusers whose mail proggy is misconfigured or whose caps lock was left on so that now they can't get in their PC.
But as you progress in your career, you better get yourself familiarized with all the little
You need to understand that you are a handyman. You will be expected to know and do a bit of everything, and to "think outside the box". Even as a Unix admin you will probably need to be skilled in the inner workings of Microsoft software. Most networks are hybrid: The lusers all have MS crapware and Unix will be confined to the servers.
Solid knowledge of computer networks is a major plus. You need to know how to set up a network, both at the hardware and software level. Bridges, routers, switches, cabling, the works.
You need to know how to configure routers. Cisco routers are very popular, and books on them are easy to find. Knowledge of routing protocols is a big plus.
If you're lucky you might even get to play with "legacy" networks that are getting out of mainstream every second. So you better get some training on Novell stuff, and pray that's the worse you'll come across, since there is a whole lot of old stuff out there that should really be in a museum. I'm talking about early IBM hardware running long-forgotten software with manuals that have rotten away ten years ago.
You probably learned about some of this stuff in college but it wouldnt hurt to take a second look.
The stuff that you glanced over and thought you would never need to know, in particular. Such as token rings. Everyone has Ethernet right? Wrong.
Of course you should really focus on what your future employers ask in their ads.
Certifications are always nice to have. A lot of the stuff you need to know you will NOT learn in any college.
Really, the subject sums it up. You have to know a bit of everything to be a good sysadmin. I guess the same could be said about a programmer or a doctor or any other person. Knowledge is power!
ls
:)
man
cat
pipe "|"
more, less, and most
#!/bin/bash -- to test your ideas
export
echo
vim
lynx (to get to google to search for help)
xchat-text (to pester people in search of help)
and, of course, apt-get
I'd say with those (and fewer if you know something about something) you can figure out how to do just about any job (and then do it)
What comes first, finding a teacher or becoming a student?
You mention a fair amount of experience in Solaris, which is probably the most common "official" (in the trademark sense) Unix out there, and Linux, which is probably the most common "nonofficial" Unix out there. What kind of experience is it? If it's as a workstation user, through KDE, Gnome, CDE etc, then it might come in useful, but don't count it as fair.
Generally, my experience is that shops hiring Unix people expect them to rival McGyver and connect e.g. the SHINY NEW network management system to the legacy systems THEMSELVES without shelling out money to integrators, using not much more than a few perl scripts and duct tape -- whereas those hiring Windows will more often than not, in my experience, expect their employees to oursource it to someone more qualified (mostly because the duct tape is a COM object with 5000 undocumented methods that no one really knows how to use; Yes, this is from experience).
Make sure you've mastered all of the standard Unix tools (cron, awk, perl, vi, and friends), Unix-Windows integration stuff (Samba, sun's SMB server whose name eludes me at the moment, OpenLDAP, Cygwin), _basic_ database management (unless you plan to become a DBA, you don't want more than basic but you DO need basic), mail configuration, and _basic_ system administration (unless you are planning to be a sysadmin, in which case basic is not sufficient). Most importantly, the unix philosophy that that everything is a file (or equivalent to it), and that most everything gets done by copying or piping data from one place to the other, possibly transforming it in the process with (ideally) a one-line simple, modular, command.
I can't give you specifics, because they depend on the field you're looking to enter, and more importantly, the details of the job, which vary widely. I hope the general descriptions above help.
Contact me directly if you want to talk more.
-Erik
Systems Architect
There are always four sides to every story: your side, their side, the truth, and what really happened.
On a more practical level, learning how to configure and run the following applications, which you can do at home on a small Linux network, will give you a solid grounding in many Unix admin principles & relevant protocols even if you then take a job where some or all of them are irrelevant:
(Note: You will make many mistakes while setting these up. The methods and means by which you debug these errors will be the measure of you as a sysadmin. Research and use the tools you have well. Do not give in to the dark side, Luke... wait, wrong movie.)
Good luck with your well-chosen career.
Ade_
/
Big Bubbles (no troubles) - what sucks, who sucks and you suck