This is going to be a series of posts on staffing your Linux Dream Team. One of the most difficult issues is deciding how to select a staff to begin a new Linux deployment within your company. Highly skilled admins of any operating system are expensive, but tend to make few mistakes and know what to expect when things go wrong. Lesser skilled admins while cheaper, come with an increased chance of outages or missed opportunities due to a lack of experience. So what is a manager or executive to do?
Remember these five key factors when staffing:
- Size matters... It seems like an obvious statement, but it very often gets out of control. It is not a direct proportion of servers to admins, but it normally hits somewhere between 15 and 50 servers per admin. This depends on the skills and other duties the admins are being asked to fulfill. I know of environments where the ratio is nearly 100 servers to 1 admin. This high ratio is rare though and requires a team of highly skilled admins, who know how to automate almost every daily task. This streamlining can only be accomplished with a team that consists of no entry level admins.
- Skill Level... The higher the skill level of the talent the more expensive the talent, but you will then require fewer of them. This does not mean that a team of all senior admins, like myself, would be more cost effective. At the same time a large team of lesser skilled admins is not more cost effective. Which leads me to the next point.
- Team Mix... A mix of lesser experienced, mid-level experienced and highly experienced admins, when possible, works the best. This assumes that the number of servers will be relatively large or that the level of effort will be high.
- Level of Effort required by the admins... Teams that are responsible for only the OS can have higher ratios of servers to admins.(25-50) Teams who will be asked to support not just the OS but things like Database Servers, Web Servers and the like will need a lower server to admin ratio.(15-30) Everything you ask someone to do takes some amount of time. The more he/she has to do, the more time you need to allow them to do it.
- How critical are the systems being administered??? It sounds like a strange question, I know. Every system in IT becomes critical at some level or you would not be building it, right? If you are just starting out with Linux though, it is common to use a low priority system like the company's intranet to test it out. On the other hand, the level of staffing will be more critical, for instance, if you are installing something like Sugar CRM(Customer Relationship Manager) that will be used for future customer relationships and also be a key factor in growing yearly sales the priority will likely be higher.
After considering all of these factors, you should have a good idea of how to build your team. I recommend starting a new team with people your company already has. Even if those people are not highly skilled admins. If you have the option, then I recommend hiring consulting talent which will help get your project started. If the person you brought in is good enough, you can always try to convince them to stay.
Next week I will present some small company staffing examples.