Hi! Amit,
> I have completed my engineering and seriously looking at System
> Administration as a career option. Can you tell me about the career
> prospects?
Its nice to know that we still have engineering graduates among us
who think system administration is a challenging field. When I
suggest this field to freshers, they usually can't believe that I am
sane enough for their further attention. For most of the freshers,
learning Java and DotNet are the ultimate goals in computing career.
True system administrators will be in demand as long as companies
keep using computer systems. It would be interesting to know what
the term _True_ means here. System administration, in general,
requires following skills:
1. Understanding how hardware works.
You don't have to be a wizard in digital electronics. But you need to be
familiar with terms like SATA, PATA, Routers, Modems, USB1, USB2 etc.
Basic understanding of functionalities of various components in a
computer system is a must.
2. Knowing how to program.
If one opts for system administration to remain in the IT field,
even if he/she lacks programming skills; then it is a bad choice.
You can't administrator multiple systems in a smooth way
without doing some sort of automation. The tasks like getting a failure
notice via SMS, automatic backup of data at odd hours of nights, detection
of some intrusion etc. do require programming. Though various tools are
already available to carry out these tasks, one can't create a tool generic
enough to solve all the problems possible in a setup. So the skills of
_glue programming_ is necessary. On Unix/GNU-Linux you need to learn
bash, perl or Python etc. For Windows administration, you need to know
VB script, perl/Python or power shell for scripting purpose.
3. Knowing various software components used in the system.
As a system administrator, one needs to know how to set up various
services required in a company. It is necessary to understand how
various services are provided. One needs to know how mail sytem
works, how DNS and DHCP functions etc. Ability to set up mail servers, file
and print servers, Active Directory/LDAP, document repository etc. is
a must for a sysadmin. Sometimes one needs to set up additional
tools for project management, time tracking, knowledge base management,
wikis etc. As a system administrator, one needs to know how to set up
and configure these tools. Also required is the skills to fix problems as and
when they are detected. Without a proper understanding of underlying
components, it would be easy to feel helpless when your users ask you to
solve their problems.
4. Knowing how to manage stress.
System administration is a stressful job if you are providing service to
large number of users. One needs to know when to say _no_ and how
to say it. Managing people and their needs is one of the most important
part of system administration. The idea is to provide smooth services
even when the system and the admin both are under stress.
Usually point 1 can be taught to a person. Except point 3, the other ones are
generally inherent in people. These things are difficult to teach but may be
easy to learn by looking at others' examples. Point 3 requires some good
experience. I am yet to see a coaching class where they teach everything
required to master point 3.
> Also, I am thinking about taking the RHCE exam. I am not able to
> spot much training institutes in Mumbai, CMS Computer Institute
> and Gates Training being the only ones I have been able to come up with.
After observing the computer institutes in Bombay for over a decade; and
after teaching in some of them many years back, I can safely say that
you can only learn 10 to 20% of required skills in any institute. The best way
to learn is to experiment on your own computer system. It is a long and
tortuous route. But it is the best one leading you to be a _true_ sysadmin:)
Since you are fresh out of the college, no one is going to take you to
administer their critical systems. The best bet for you is to join some
company as a trainee and learn the secrets of the trade for next two
to four years. That experience will be counted to get a fat pay check
afterward. People with good sysadmin skills are always in demand. I have
seen many who earn more than those so called _real programmers_ of
similar experience level. But one thing to remember is that, sometimes
programmers can fake it, but not the sysadmin. You do need to know
the internals of the systems you manage.
Wishing you a challenging and enjoyable career in system administration.
Raghu