From Wikipedia:
A system administrator, or sysadmin, is a person who is responsible for the upkeep, configuration, and reliable operation of computer systems; especially multi-user computers, such as servers. The system administrator seeks to ensure that the uptime, performance, resources, and security of the computers they manage meet the needs of the users, without exceeding a set budget when doing so.
So, really, who is it? Well, unless the company where the System Administrator works is very small, it is really not a single person, but a whole team. In this team, each member has different duties, among those listed in the definition and, possibly, more than one person is assigned to the same duty.
However, for the sake of simplicity, we will refer in this article to the System Administrator as the one person that does everything. You just remember who is really at work behind the scenes.
Did I say behind the scenes? Well, it really is like that. Normally, nobody cares about System Administrators until something goes wrong. Nobody knows the huge amount of work that System Administrators have to face in the day to day activities, just to make sure that everything goes on smoothly. Users only remember System Administrators when something goes wrong and they are really quick to blame them for that. If they only new that the majority of work was elsewhere, not just to fix the problems. We should all be very grateful to System Administrators and the work they do.
Disclaimer: although I do System Administration for my home network, I do not do and never did System Administration in any company I have worked with. But I am fully aware of what is going on behind the scenes because I am one of the guys that designs the elements of the IT infrastructure from the ground up, both in hardware and in software, although nowadays it is mostly software.
Daily Duties
So, what are the Daily Duties of the Sysadmin? Let’s make a list of them and, for each item, let’s provide some sort of job description and explanation. And note that the list is by no means exhaustive.
- Hardware Installation And Maintenance. And here I am, talking about servers, routers, hubs, cables, and basically everything that makes up a whole local network. The system administrator must be able to deal with the hardware and has to know how to properly handle it and physically install it. He needs to know the procedures and protocols to replace defective parts like disks, whole network nodes, and similar. A lot of time is devoted to this activity, as network components do fail over time and need to be replaced or repaired. Also, duty of the sysadmin is to run diagnostics periodically, to figure out when a component is about to fail and fix it before it actually does not work anymore. And because these are disrupting activities that could prevent users from doing their job, often the sysadmin has to work outside office hours, sometimes even during the night, so that the next day users can continue to work without even noticing that some sort of maintenance was done in the network, and that the sysadmin did not sleep to allow them to work flawlessly.
- Software Installations And Upgrades. Yes, because all that hardware does not work on its own but use software that needs to be installed and, eventually, upgraded from time to time. And again, this is often disruptive work in the network, especially if the unit that needs to be maintained is a business critical server. So, also this job needs to be done outside regular working hours.Moreover, the sysadmin has also the responsibility of making sure that the software works as expected. So, before doing a new installation or an upgrade, the sysadmin has to do the work on a spare system, possibly offline, to confirm that the installation procedure can go smoothly and to measure the amount of time required to do it, so the correct date, time and duration of the activity can be scheduled safely for the business. And of course, after testing the installation or upgrade procedure, the sysadmin needs also to test the functionality of the new software. So, sometimes, after the actual installation/upgrade, the sysadmin has to spend days running tests to make sure that everything will work fine once the operation is done on the live systems, so that the users will not even realize that something underneath was modified.
- Logs Analysis. Daily check of all kind of system logs and application logs, to make sure that everything works fine and there are no issues. If something is found wrong in the logs, the sysadmin has to use again the test system and try to reproduce the problem on that system. And, once the problem is reproduced, he/she needs to find a solution to fix it. Sometimes it will be just a matter of fine tuning some configuration parameter. Some other time it is a software bug, so the sysadmin will need to involve the developers that wrote that piece of software, if in house, or the company that sold it, otherwise. And then, since the fix usually is not done immediately, but it needs a new software release or a patch that needs time to prepare, the sysadmin has to find the way to mitigate the problem, so users will be able to do their job while waiting for the fix to be ready, tested, and installed.
- Users Management. People in a company come and go, or maybe just change job requirements. Because of that, they need to acquire access to certain servers rather than others. The sysadmin job is to make sure that updates to the users rights of access are done correctly, in accordance to the company policies and needs.
- Security Management. I’m not talking just about virus detection and elimination. Sysadmins also need to prevent hackers or other malicious people to access the company network to either create havoc or to steal proprietary information. And so the sysadmin has to deal with antivirus systems, firewalls, email spam detection, Trojan horses, DoS attacks, and so forth. This is a never-ending activity as the bad guys out there keep trying new ways to get into the network, maybe using social engineering to gain access. So the sysadmin has to keep all the systems updated with the latest security patches, with the appropriate and ever-changing security software. The sysadmin also needs to inform the users of the techniques used by the attackers, so people within the company knows how to recognize when something that seems perfectly innocent is actually wrong.
- Systems Performance Management. Obviously everybody wants to have an environment that is always ready and fast to satisfy all their needs. And maybe some of the heavier users use some applications that generate a lot of traffic in the network. Not to mention data streaming, and more, and more… It is here that a lot of the time of the sysadmin is spent. Monitoring the network to find the bottlenecks, to fine tune that particular router so that it can perform better under the load that the particular user is throwing at it. Not to mention multi-user database servers that always need to be fast in providing the required information, or store new huge amount of data, continuously generated by different applications. And the need to make the network work also to handle IP phones, not to mention video conferences and the like. The sysadmin needs to continuously monitor the performance parameters of the network, recognize patterns that could lead to network disruptions or slow down over time, pinpoint malfunctions and fix them before they become showstoppers.
- Mass Storage Management. And what about the storage of all that massive information in databases and in user data? How full are the file-systems? Which one needs to be expanded adding new hardware? Which one is underutilized, so some of the resources could be moved to other areas where they are more needed, without adding to the costs of maintaining the network?
- Backup/Restore. Not to mention that all data is crucial to the welfare of the company. Data cannot be lost. System failures that may cause data loss need to be addressed and, eventually, data needs to be recovered. And so the sysadmin has to work to design the best backup protocol that satisfies the need of the company, and then he needs to implement it. The sysadmin needs to add disks to the network, create raid configurations to provide the first barrier to data loss causes. And then needs to store offline the backups of all that data, and also, possibly, off-site, to prevent a critical failure that destroys also the backup data stored on site to cause a permanent loss of that data. And then there are the users mistakes; people that inadvertently deletes their own files and then the ask the sysadmin to recover them and restore them. How many times that happened to you?
- Documentation. Writing documentation is another important job of the sysadmin, whom needs to keep records of everything been done so, in case of failures, it is easy to go back to see if anything was done wrong and fix it. Or maybe, just because if he/she is not available, somebody else can read the documentation and understand how that thing that is not working needs to be fixed.
- Servers Room Management. And did I say anything about the room that contains all the equipment? All the servers? Do you have any idea about how important is to keep everything tidy and clean to avoid that the dust infiltrates in moving parts and cause damage? Or just deposit on electronic circuits and cause short circuits or just overheating the systems? And talking about heat, do you know how much heat those serves produce? Machine Rooms are usually served by big air conditioners that refrigerate the room even during those cold winters, to prevent the systems from melting under the excessive heat. And here is the sysadmin, that more often than not is also asked to provide a design for the cooling system, and then he also needs to maintain it, or at least monitor it for possible issues.
- Users Assistance. Finally, there are those unpredictable users. There is that one that does not have that particular application available on his computer and needs help to install it. Or the other one that prefer to go BYOD, with all the consequent dangers of viruses and Trojan horses bypassing the company firewalls and creating havoc. And what about doing the software update of all the company laptops and desktops whenever a new security patch becomes available?
Skills
Of course, all of the above requires skills. The sysadmin needs to know how to perform all those duties. He also needs to be informed, to be innovative. So the sysadmin needs to take classes, to read technical articles, to stay always a step ahead of what the needs of the company are, so he can propose changes to address specific issues in the work environment, for the benefit of the users, or just to improve their condition of work whenever new technologies that can help become available.
Did you ever give any thought about all of this? Think about it, before next time you go to the sysadmin and accuse him or her of not doing their job because your laptop seems too slow when doing that particular task.
Comments please, and have a nice, safe and productive day, provided by your unrecognized System Administrator! 😉
Leave a Reply