For the purposes of a small business (less than 50 employees) is it generally advisable to hire someone full-time for IT Services or outsource to a separate company? Here are some details about the company in question:

  • Health Services - Generally involves gadgets and hardware not easily maintained
  • 25-50 Employees - Most of which interface with a computer regularly
  • Microsoft - Almost completely windows based

Should this business be outsourcing their IT/Infrastructure issues or hiring someone full time? If outsourcing is the answer, what are some good companies that do this sort of thing? What should the requirements be for the third party?

16 Answers 16


It All Depends(tm).

I'm a little bit biased because I am an outsourced IT provider. I have Customers who are larger and smaller than the company you describe-- some have in-house IT staff and others don't.

I'll apologize in advance if it sounds like I'm trying to "sell" you in this posting. I'm really not. We only service Customers who we can feasibly visit face-to-face, and your profile says "South Carolina" whereas mine says "Ohio". With that in mind, though, I do think that there is a potential situation that outsourcing may work for you (or, it may not).

If you don't get anything else out of my message, take this away: The specific people who are involved, ultimately, will make any arrangement either succeed or fail. If you get an employee or an outsourced provider who genuinely cares about your business, cares about doing you right, and cares about providing the most efficient and cost-effective experience they can you'll have the best luck. Too often employees see their work as "just a job" and don't give their best effort. Too many outsourcing companies are in the business to make money, potentially at the expense of their Customers.

Outsourcing doesn't necessarily mean "a different person ever time". My company, for example, has been the same three people since we started in 2004. Our Customers see the same faces on every visit. Your selection of an outsourcing firm makes a big difference on this issue.

Going with an outsourcing firm that uses a "fleet" of rotating "technicians" (constantly experiencing turnover) isn't going to give you a good experience. Having a "revolving door" position inside your company will accomplish the same poor results.

The labor expense of an employee depends a lot on their level of skill and your job market. In my area, Dayton, OH, US, I'd expect to pay an admin handling, say, server computer hardware, cabling / network infrastructure maintenance, Active Directory, Exchange, PC issues, a company web site (not necessarily the content-- just the hosting relationship), VPN access for remote users, and backup between $35,000.00 and $50,000.00 / year. Benefits and payroll tax are going to be anywhere from 20% to 35% of the salary (depending on your locality), for a "true cost" in dollars of somewhere beteen $42K to $54K on the low-side.

Just remember that an employee costs more than their salary and benefits. You have an opportunity with many outsourced firms to "cross train" multiple "technicians" with your environment. With an employee you're often stuck with nothing when they decide to seek greener pastures.

With our particular firm, $42K can buy a substantial quantity of on-site presence and VPN-based incident response. I'd shop around whatever you expect the true cost of an employee to be to local IT outsoucing firms and see what you come up with. Based on the size of the company you're talking about, and bearing in mind that I know nothign about your line-of-business software (the quality of which DRAMATICALLY affects service labor outlay), I could easily see that after getting over the initial setup hurdles (wresting "Administrator" rights away from users, getting servers / backups / email / etc setup in an optimal configuration) you could settle into a recurring service routine of 16 - 20 hours per week, and possibly even less.

The best arrangement that we've worked in, historically, has been reporting to a semi-technical manager who handles the day-to-day admin tasks (password resets, new account creation, etc), and defers higher-level problems to us. This keeps the day-to-day expenses lower, but still assures that the infrastructure is properly installed and maintained. Since we're a "services only" Firm (and don't sell hardware, software licenses, etc), it's usually easier for our Customers to grasp that we really are "on their side" and really are looking out for their best interests.

Our business model is to get Customers setup with a solid infrastructure that's setup right from the start, proactively monitored for failures, and ultimately configured with the intention of requiring the least amount of ongoing support labor to "keep running". It's perfectly possible to have a network infrastructure that mostly "takes care of itself" and doesn't need a large amount of daily "care and feeding".

Like I said-- I'm probably biased. This is the kind of work that I've done for years and I think it tends to work very well. Ultimately, though, there is no easy answer.

  • 2
    I don't know about your company, but I've dealt with some outsourced help that are a pain and some that worked really well. Sometimes it's hard for a small company to weed it out and other times it's painful to recover from another company's "solutions". I think they need to consider this too... Jul 29 '09 at 18:08
  • 2
    Like I said-- it comes down to the people and their attitudes. I know what you mean re: "solutions"-- I've had to clean up a number of them. I advise prospective Customers to ask all their potential outsourcing companies "If we decided to stop working with you tomorrow, how easy would it be for us to pick up with an employee or with another outsourcing firm?" We do a lot of work to keep our Customer networks very "plain vanilla". Likewise, we make it very easy and painless to get rid of us. That's probably part of the reason that no one ever has... >smile< Jul 29 '09 at 18:14
  • Small business owners who are having trouble selecting an IT provider (be it an employee or an outsourced firm) would do well to spend some time "networking" with their peers in the small business community. The sad fact of the matter, though, is that with the barrier to entry so low in the IT industry there are a lot of charlatans out there who have no idea what they're doing and are only too happy to take a company's money and leave them with a horrible mess. References, be they for an employee or an outsourcing firm, are essential. Jul 29 '09 at 18:16
  • There is good advice in this post. I would generally say that employees are generally more interested in helping the company they work for as their salary is directly tied to the company. How important this is, is probably dependent on how important the IT is to the company. As it is described my instinct would be in house however thats how I work so I will be biased that way.
    – James
    Jul 29 '09 at 18:20
  • It can work either way. When I was a manager at a company w/ a "fleet of technicians" (ick!) I impressed upon the techs that the good of the Customer was our priority. W/o Customers having continued success there wouldn't be money to pay our firm (and, ergo, to pay their salaries). It might seem heavy-handed, but tying a technician's continued employment to the happiness of their Customers was, I believe, The Right Thing(tm). (I took it to heart so much that I quit and started my own company so I could work directly with Customers. You'd better believe that I worry about their happiness now!) Jul 29 '09 at 18:31

I think the instance above... In House (full/part time) would probably be the way to go. Cheaper, more available, and should get better as the new hire becomes familiar with the system.

The interview would be pretty much a standard IT interview. Try and find the best person for the job basically.


Even if you outsource, you'll likely need a person to liason between the users and the 3rd party.

I'd think about a hybrid model. Get a lower end person who can do the light IT work, password resets, printer jams, unplugged network cables, etc, and prefrom triage on IT issues as they come in. Then look at an outsource for the "heavy lifting": Server Installations, network infrastructure maintainence, etc.

We are somewhat larger than you are, but we have had good luck with a company called All-Covered.


Outsource, frankly, and lease your workstations as opposed to buying them. With 50 users, you're rarely going to hit something that's going to be a show-stopper. Just keep a standardized equipment policy -- have all computers be the same (hence the lease option above) and if one breaks, you unplug it and plug a new one in at the workstation. At that point, all you need to do is know how to match the colored plugs. Then your outsourced person will just pick up the broken machines (or you just ship them back to the lease company) and you don't have any downtime or any support cost.

For group file storage and email, outsource those too. That way you will only have issues if your internet connection's down. (And if it's down, and you're on a T1 trunked phone line, usually that's down too.)


Years ago, I was the outsourced solution to a small health service company in a major city. Financially it worked out well for my clients (and me) as they paid me on a per-service basis, but they were much smaller (10-15 employees) in comparison to your outfit. For my clients, their needs were very simple and I was able to setup things in such a way that would require little intervention.

It's tough to say as just 10 machines can require a lot of maintenance (now replaced with WSUS updates/SMS/remote desktop, etc. etc.) but a lot of little issues tend to crop up in clusters and then months nothing major would occur. Just ask yourself how much technical help do you need during a given day/week/month. That might help steer you in the right direction.

I would investigate the outsource route, but the number of employees who need service might require someone on-site. I would also look into outsourcing a number of IT functions (mail,off-site backup,etc.etc.) that would alleviate costs and still manage to keep things running for all the employees. Now I know others may say hire someone but don't let bias affect a decision like this. There's a lot of pros/cons to go either way. Seeing as how the economy is a huge factor, I'd base your decision based on budget and future projections.


Like others said, it depends.

If you have 50 employees I would think that you would want to consider having someone in-house, especially if you're a niche or have special legal requirements, so you can have someone who will learn the ins and outs of your particular field and setup.

You might want to consider pricing an outsourcer and see what they average. Then consider:

downtime? How much is it worth to have someone immediately available to work on issues?

For a contract with the outsourced company's cost, is it on par with someone who would be an employee with salary for you, especially if it's a contract with guaranteed response time?

Do you have needs like backups, clustering, network maintenance, etc. that really needs a person there to take responsibility for it but right now you're kind of "coasting" and hoping nothing goes wrong?

Are your IT needs something that really needs someone to take responsibility for a budget over, like maintaining servers and purchasing parts, etc.?

Do you want someone who isn't biased towards selling you on a particular solution or technology (i.e., in the outsource company's interest...I worked with a company where the solution was always accomplished with Netware, no matter what. It had some nice features but it really wasn't what they needed but it worked great for the consultants who were netware certified)?

Do you want to be able to blame an outside company with things go wrong rather than your in-house person?

Are you already shifting responsibility to someone inside the company as your "resident geek" and in the process taking away their job responsibility to maintain something that is outside their job description?

How close are you to a decent outsourcing company...minutes or hours? Can you afford to wait the hours (or days) to have someone come in to work with you on an issue?

If the company requires you to work with them remotely and you're in the medical field, are you qualified to judge your security issues this introduces? What about security of having outside staff get access to your equipment and records? Are you liable if someone...since you don't have control of who will help you one month to the next...decides your records are nice candy to borrow on a USB drive for later browsing?

You might also want to consider that if you're not knowledgeable on the technology in-house, you may want someone there to at least be familiar with your configuration, your hardware and software, your people, someone to look out for your best interest. Even a good sysadmin knows when he's in over his head and needs outside assistance, so it can be beneficial to have someone in-house for the majority of your tech help and still work with outside people when you need a SAN installed or a VOIP solution or something like that.

Just some things to consider. You may have needs you don't even know about until getting someone hired on the inside, like setting up and maintaining central file servers and backing them up properly if you're currently a hodgepodge of added hardware and software over time.

  • I find some humor in the phrase you use "Even a good sysadmin knows when he;s in over his head..." Generally speaking, it's only the good sysadmins who know that. The poor sysadmin often ends up digging the hole depper. Jul 30 '09 at 2:25
  • True, I was just on a roll and didn't catch that mis-phrase...I'd edit it to correct it but I agree, it's just more humorous. I'll leave it in. :-) Jul 30 '09 at 15:24

People always mention these two options; "inhouse fulltime" or "outsurce".

In my opinion the big problem with outsourcing your Information Technology is that everything becomes a 'reaction' to something broken. There is nobody pro-actively helping with 'minor-issues' or preventing them. There are exceptions, but generally when a company is getting paid by the hour, you only use them when you absolutely need to.

For a small company that isn't running any sort of data center I recommend (and this would be easier if I knew your company better):

  • Hire a part-time sysadmin (20% - 40%) that comes in once a week. Make him responsible for implementing a backup strategy and any internal support you might need.
  • Outsource any servers you need, such as email, calendaring (also makes it more flexible for people to work from home without complex VPN connections)
  • In case of shit, hitting the fan; it will happen. So, it helps to get someone that will be able to rush to the rescue if need be.

I doubt that you have enough work for a full-time admin and it's hard to replace that personal touch you get with your very own sysadmin by hiring a company to do it.

This is based on what I could gather from your information, but without knowing exactly what you expect to be done in terms of IT, this is it.

(p.s. give your sysadmin a hug on Friday. It's System Administrator Appriciation Day!)

  • Curious...how do you get a full time admin that essentially isn't outsourced? If you can't pay him enough to stick around and be on-call for when the sh* hits the fan, how much do they have invested in the business? I'm just thinking that what you're describing is more like a consultant with a contract for hours...essentially still outsourcing, no? 50 workstations can still keep a good sysadmin busy, especially if he is tasked with training duties as well and proactively keeping systems (and servers) up to date. That's just in my experiences though. Jul 30 '09 at 0:08
  • I'm going w/ Bart on this one. A "part time sysadmin" is basically a contractor. Nothing wrong with that (in fact, it's how I make my living), but it is what it is. Jul 30 '09 at 2:26
  • It all depends on how you treat it. If you treat him like an outsider and pay a contract, then he's a contractor. If you pay him 20% salary and treat him like a part of the company you get something better. 50 workstations, with training and servers is definitely enough for a full-time admin; we just don't have enough info to speculate on it. IMHO, there's a big difference between 'your 20% sysadmin' and 'that guy who comes in when things break'.
    – Andrioid
    Jul 30 '09 at 6:15
  • 1
    Actually no - it depends on how HE treats YOU, and with 1-2 days per week he will treat you as contractor. Problem on Thursday? Sorry - he is with the other customer that has Thursday allocated.
    – TomTom
    Jul 29 '10 at 6:06

As an in-house IT person myself I would have to say go for in-house. With that size of a user base it should be enough to keep some one always working. Even if it's putting up keyboard trays...

Outsourcing it means you dont always have the same person in most cases. This can lead to increased costs as it will take time for each person to get to know the envrioment and equipment. And at $75 to $200 an hour for outside help that will add up quickly.


i think you should have someone in house, outsourcing in many cases end up being very unproductive and for small things it takes longer since you need to coordinate and involve some 3rd party that your issues not even on high priority list


Well I work for an IT outsourcer, so my perspective might be biased.

The main question you have to ask is "do you think you have enough to keep a full-time person busy?"

If yes, then FT/P is cheaper.

If no, then it becomes a balancing act between costs and responsiveness. Nothing is more responsive than a help-desk guy sitting there waiting for the next call. However, if all he's doing is waiting most of the time, he isn't very cost-effective.

If you are going to out-source, you do need someone on-site manager to act as a filter and direct priorities. This is usually a manager or someone who is already responsible for IT in some way.

You probably want to retain a company rather than a single contractor to help you. I say this for two reasons -- first, a company can provide alternatives if/when the prime is unavailable (contractors like vacations too), or just isn't working out. Second, in the case of severe emergencies, a company can frequently scale up the number of bodies working on a problem -- consider having access to a half dozen guys for Exchange migrations or virus storms or whatever, all without having to pay them all the time. It also makes it easier to have access to after-hours SLA support, companies are more likely to have someone on call and actually available to help you.

When you do get big enough to have a FT/P employee, you probably want to look at a senior person to manage everything, and then grow junior people underneath as required. Again, your relationship with the contracting company can help, as they can supply junior people as you need them, plus give access to senior people for planning or one-off project requirements.


I'm an in-house guy so likewise I'm also biased here, but looking at your situation I can see a few factors that may need to be taken into account.

  • I'm of the opinion that having someone on the ground floor to respond to issues as they arise is more than worth it. This need not be a full-time dedicated IT person, a lot of smaller companies can get by with just having "the guy who knows stuff about computers" around (particularly if they don't have a Domain).

  • If you do have a Domain you're looking at needing a dedicated full-time in-house person OR outsourcing. You won't be able to manage it with just "the guy who knows stuff about computers".

  • Depending on your line of business outsourcing may not be viable. If you have any confidential info (govt stuff, trade secrets or whatever) you'll need to be very very careful about who you choose, and ensure that they are absolutely reliable. If they DO leak anything you can be in a position to throw the book at them, but the damage will have already been done. This I suppose is one example of where a non-IT factor is crucial to an IT decision. There are others.

Overall I don't believe there is a single right answer to this question that's universally applicable. Like I said, I lean towards in-house expertise because of the value of immediate response to things like servers giving trouble at inconvenient times, and it may assist you with confidentiality or regulatory compliance, but at the same time I'll concede that an in-house person can be quite an investment. The best I can say is to think carefully and to consider factors outside of the pure IT requirement before committing to a decision.


Depends on how much work out have to do. I work as an outsourced employee for SMB's. If you have an employee that is competent enough to handle basic troubleshooting, you don't need someone in house dedicated to IT and can outsource complex and server issues.


The answer is: whichever one is going to give you the support you need. Right now I work for a large company, and our IT staff (in house) is overloaded. I've had a low-priority request in that has sat for 3 weeks now. I expect I will NEVER get an answer from them (it's about hooking an iPhone to our corporate VPN, and I've worked around them).

The important (and seriously difficult) part of deciding how much and what kind of IT infrastructure is in figuring out how much IT you need. Are your users knowledgeable? Or do they need someone to tell them how to use Outlook every third day? Do you have standard desktops? Or is each system dedicated to it's purpose and needing to be maintained in it's exact configuration? How often do you experience computer and network problems?

My personal opinion is that an on-site IT guy is a real asset, as long as you get a good one.

I'm a firm believer that no matter how good an outsource IT company you hire, you're going to have two issues with them:

1) They may change over time. If they fall on hard times just like everyone else, they may end up cutting corners and reducing service. If you've got a contract with them, you could end up really screwed if they go downhill.

2) You aren't their only priority. Remember that they have other customers and finite resources. Even if they are good, and appropriately staffed, you may well end up getting the short end of the stick if several customers have problems at the same time.

There's one other issue with outsourcing (or indeed with any situation where the IT guy isn't in the same building) - the users are going to try to deal with things themselves in order to avoid having to go through the hassle of calling IT and waiting for IT to arrive. This is generally bad for a variety of reasons: It distracts your users from their work, If they are not computer people then they may make any problems worse, etc.

The worst is that someone in the office will display competence with computers. From then on, when something goes wrong, they are going to ask Bob to help. Since Bob is a decent person, Bob's going to try to help, and you end up losing a lot of Bob's time to IT stuff.

I guess what I'm saying is that even if you outsource most of it, make sure you have a local IT person that the users can turn to. Otherwise, they'll make one up for themselves.


As all of the other posters says it depends. I'm biased as an outside IT provider.

At 25 ee's there should never be enough work to keep one tech busy and we have yet to come across a really competent IT person that has another career. We regularly clean up after part time in-house IT when something bad happens or they move on. This is a reflection on the pace of change in IT and how specialized it has become, not on part time work or any particulular person. All the caveats apply about finding the right company.

At 50 ee's it could go either way. If you find the right IT person to hire it could work out great. It is difficult for non-technical people to evaluate the technical strength of applicants, consider getting help with that part of the evaluation.

Outsource doesn't have to mean hourly and there is a strong trend in outsourced IT to move to a flat fee per device with an SLA. This means the IT provider has a strong financial incentive to both meet the SLA and keep things running smoothly, in other words be proactive vs reactive.


Good advice here, so I'm just going to add a few things. The choice is a trade off, and there is no one right solution. Evan Anderson points out (rightly) that 16-20 hours per week is about right for a consultant in an organization your size. 16 hours times $75 per hour is $1,200 per week, $4,800 per month, or somewhere around $60,000 per year. In that scenario, you're essentially paying for a full time employee, but you're getting two days of work instead of five. There are companies in my area that charge $150-plus per hour, which makes them largely unsuitable for the kind of work you need.

That being said, a consultant probably has both broad and deep expertise an employee does not. This can lead to both faster and better project implementation. Consultants are almost always better at crisis management, as their jobs naturally involve more companies, which mean more crises. On the other hand, consulting companies often bill their consultants 40-50 hours per week, which naturally results in a bit of flying by the seat of their pants and always needing to get to the next job.

I think you're on the border of needing a full-time person. You could hire a consulting company and do fine or you could hire an employee and be just as well off. The deciding factor might be the quality of full time candidates and cost/benefit of an employee versus a consulting firm.


For every IT-related system you maintain, throw it through this filter question: "Do we use this system in a standard manner like other companies?"

Good examples of this are Email applications, Desktop workstations, and Intranets. Many companies, even specialist companies with specialist IT requirements, still use email, workstations and intranets in the same manner as most other companies out there. These systems, being used in a standard manner, are ideal candidates for outsourcing to a third party.

On the other hand, systems tailored for a very specific "unique to your business" requirement, like a bespoke analog dialinig application which uses highly customized interfaces with the remote equipment. Written in Fortran. On HPUX. Yeah... don't outsource that bit. Maybe outsource the HPUX support element of it, though!

Often you can extend this a bit further and find a good route. Maybe say 'OK... currently we have an email system with a bunch of custom forms and outlook add-ons that we depend on to do business. But with a few weeks of development work, and some buy-in from management, we could transition just that custom element out to a standalone system. Once you do this, you can outsource our email.

I've seen companies with specialized IT requirements attempt to outsource wholesale, and encounter a whole world of pain. Likewise, I've seen companies with specialized IT requirements identify their differentiators, standardize, then outsource, and end up much more efficient as a result.

Not the answer you're looking for? Browse other questions tagged or ask your own question.