I moonlight from my full-time gig as a Software Engineer by doing IT support. This ranges from desktop support, hardware upgrades, purchasing assistance, remote access and support issues, network setup, configuration, and administration, etc. Basically, overall I’m acting as an IT Department for small companies.
I think I’m mostly productive in this role. Small offices don’t have a lot of issues and to some extent users train themselves to accomplish routine IT-related tasks. The intersection of “IT Consultant” who typically charges a bit more per hour to be on call to resolve a wide range of issues and the role of “IT Guy” who is hired full-time to assist with any ongoing issues is interesting.
A consultant typically:
- Is expensive on a per hour basis
- Must perform constantly to avoid being replaced (which is usually trivial for his client to do
- May not be available immediately since they have other clients, but can often be available FAIRLY quickly if your willing to pay even more
- Is expected to resolve issues quickly and surgically
An IT employee:
- Is cheap on a per hour basis
- But is relatively difficult to fire and replace if performance becomes a problem
- Is available immediately 5 days a week
- Is expected to solve problems as they arise but with little motivation to finish them immediately
I believe that for small companies, the first option is almost always the best. One of the main reasons I believe is motivation. A consultant must perform constantly and consistently with every hour that they bill. They can be replaced easily in most circumstances, and therefore must “earn their keep”. In addition, although there are definitely some conveniences of having local IT staff, most small companies do not have enough work to keep their staff busy. If they do, it’s likely because processes are not streamlined. If a member of IT staff must do 4 hours of work every day just to keep systems running, they’re probably wasting time. An expensive consultant might cost 5 times as much per hour but could be tasked to automate the process once and for all. In many cases, the IT staff member may not have the training or experience to perform automation (often consultants tend to have more rounded experience in process, software development, architecture, etc.) and normally they wouldn’t have much motivation to automate a task that would make their own position no longer be needed.
For larger companies, the volume of IT work is likely sufficient to keep full-time staff busy even if they are constantly resolving old problems, and moving onto new problems. In a situation where a single contractor can no longer fill your IT needs, it’s likely much cheaper to hire full-time IT staff.
There are scumbag employees and scumbag contractors. One of the biggest things that I have always striven for as a consulting contractor is to work myself out of a job. Ideally, I should be fixing things to a point that my client will only call when they want new features, new technology, new ideas. If all I do is treat a chronic IT wound, I’m part of the problem. Obviously, some systems take constant maintenance. But if I’m working on one system and I see a new system on the market that resolves or reduces these ongoing maintenance issues I will always point my client in that direction. My goal is to provide professional services that improve my client’s bottom line — not my own. Ideally, I’d love long-term relationships that are lucrative to me as well. But I want my customers to be successful with me as a partner, not in spite of me.
Ok, this is starting to sound like a sales pitch.
To summarize, in general, I advocate for IT consultants for small businesses and IT departments for medium to large sized companies (or perhaps specialized small businesses that have unusually high levels of IT needs). I think it’s critical that your consultant is really, truly attempting to maximize your ROI, and that they’re hired and rewarded in a manner that’s consistent with this. The same applies for your employees — your own IT staff must have support from management so that they can make their own positions more efficient and be rewarded for it. Contractors get greedy with high retainers, and employees get lazy with routine work. All organizations, large and small need to be aware of this and prepare for it in advance.