-=-=-=-=

Wednesday, March 8, 2017

Job Profile: Careers in IT : System administrator

System administration refers to the management of one or more hardware and software systems.

The task is performed by a system administrator who monitors system health, monitors and allocates system resources like disk space, performs backups, provides user access, manages user accounts, monitors system security and performs many other functions.

 
System administrator

Duties of a system administrator

The duties of a system administrator are wide-ranging, and vary widely from one organization to another. Sysadmins are usually charged with installing, supporting, and maintaining servers or other computer systems, and planning for and responding to service outages and other problems. Other duties may include scripting or light programming, project management for systems-related projects.

The system administrator is responsible for following things:

  1. User administration (setup and maintaining account)
  2. Maintaining system
  3. Verify that peripherals are working properly
  4. Quickly arrange repair for hardware in occasion of hardware failure
  5. Monitor system performance
  6. Create file systems
  7. Install software
  8. Create a backup and recover policy
  9. Monitor network communication
  10. Update system as soon as new version of OS and application software comes out
  11. Implement the policies for the use of the computer system and network
  12. Setup security policies for users. A sysadmin must have a strong grasp of computer security (e.g. firewalls and intrusion detection systems)
  13. Documentation in form of internal wiki
  14. Password and identity management

    Cloud computing and sysadmin

    Cloud computing is nothing but a large number of computers connected through the Internet/Wan. Cloud computing is now part of technology and sysadmin must lean:
    1. Automation software such as puppet, chef, etc.
    2. Cloud infrastructure such as AWS, Openstack etc.
    3. Network services in cloud such as Content delivery networks (Akamai, CloudFront etc) and DNS servers.
    4. Source control
    5. Designing best practices for backups, and whole infrastructure.

      What is so special about the system administrator account?

      The root account has full (unrestricted) access, so he/she can do anything with system. For example, root can remove critical system files. In addition, there is no way you can recover file except using tape backup or disk based backup systems.
      Many tasks for system administration can be automated using Perl/Python or shell scripts. For example:
      • Create new users
      • Resetting user passwords
      • Lock/unlock user accounts
      • Monitor server security
      • Monitor special services etc

        Most important skill to a system administrator

        Problem solving, period. This can some time lead into all sorts of constraints and stress. When workstation or server goes down, you are called to solve the problem. You should able to quickly and correctly diagnose the problem. You must figure out what is wrong and how best it can be fixed in small amount of time.

        Job Summary

        Responsible for the technical design, planning, implementation, and the highest level of performance tuning and recovery procedures for mission critical enterprise systems. Serves as a technical expert in the area of system administration for complex operating systems. Recommends the redesign and configuration of operating systems and system applications. Investigates and analyzes feasibility of system requirements and develops system specifications. Identifies methods, solutions, and provides project leadership and management in order to provide a high level of service to the customers of the department. Performs full supervision of Operations staff.


        Typical Duties and Responsibilities

        1. Manages the day-to-day operations of the PCC host computers by monitoring system performance, configuration, maintenance and repair. Ensures that records of system downtime and equipment inventory are properly maintained. Applies revisions to host system firmware and software. Works with vendors to assist support activities.
        2. Develops new system and application implementation plans, custom scripts and testing procedures to ensure operational reliability. Trains technical staff in how to use new software and hardware developed and/or acquired.
        3. Supervises Operations staff including hiring, training, evaluating and disciplining. May guide or provide work direction to technical staff, contract staff and/or student employees. Determines appropriate coverage for all hours of operation.
        4. Performs troubleshooting as required. As such, leads problem-solving efforts often involving outside vendors and other support personnel and/or organizations.
        5. Establishes, maintains and manages users Unix accounts. Installs, modifies and maintains systems and utility software on server computer systems. Provides server support related to other software.
        6. Establishes guidelines and methods for the installation and management of the host computer operating systems, disk arrays, fiber channel switches, tape libraries and other components.
        7. Ensures high availability and acceptable levels of performance of mission critical host computer resources.
        8. Develops procedures to maintain security and protect systems from unauthorized use, acts of nature and user abuse.
        9. Develops procedures, programs and documentation for backup and restoration of host operating systems and host-based applications.
        10. Develops and coordinates project directions and schedules to maximize benefits and minimize impacts on the customer organizations. Provides leadership in planning and implementation of projects for computer operations and enterprise systems administration.
        11. Develops tools, procedures, and training sessions for Operations, Client Support and Systems Development staff to assist with work.
        12. Manages the data center and computer host systems including hardware, software and equipment such as air-conditioning system, UPS (uninterrupted power system) and fire protection system.
        13. Stays current with technological developments in systems administration technology and recommends ways for PCC to take advantage of new technology.
        Positions in this classification may perform all or some of the responsibilities above and all positions perform other related duties as assigned.


        Minimum Qualifications

        Associate's degree in Computer Science or related discipline. Relevant experience may substitute for the degree requirement on a year for year basis. Three years work experience in complex systems design, programming and systems software and support.

        Knowledge of: Programming languages and operating systems; current equipment and technologies in use; Unix system administration, enterprise backup and recovery procedures, and system performance monitoring tools; effective project management techniques; principles and practices of effective management and supervision.

        Ability to: Plan, organize and document complex system design activities and to configure systems to be consistent with institutional policies/procedures; communicate technical/complex information both verbally and in writing; establish and maintain cooperation, understanding, trust and credibility; perform multiple tasks concurrently and respond to emergency situations effectively.


        Work Environment and Physical Requirements

        Work environment includes typical computer related noise levels and paper and equipment generated dust. Exposure to video display terminals occurs on a regular basis. Incumbent is on call to provide support services during off hours. Scheduled night and weekend work is required. Learned physical skill is required for keyboarding and use of peripheral equipment. Moderate lifting.

        There are different types of system administrators based on their roles and responsibilities. A bigger company might have different system administrators having different roles, but for smaller company, most of the different roles might be shared by just a few system administrators, or even one single person. Some of the different types of system administrators are:

        • Server administrator – maintains the operating system of the servers, and to some extent, the applications as well, such as the mail services, the web services, etc. He is also in-charge of troubleshooting any hardware, operating system or application related problems.
        • Network administrator – maintains the network infrastructure, such as the routers and switches, and troubleshoot network-related problems.
          • Database administrator (DBA) – maintains the database system used by organisation. In bigger organisation which uses bigger and more complex databases, there is a DBA which specifically responsible for this role. In smaller organisation, this role would normally be shared by the server administrator