Creating an IT department? [closed]

Not sure if this is the best place to ask this, but I could really use some suggestions/advice. I was just hired at a small company (10 employees at corporate, plus about five off-site) that basically has no IT department. I was originally hired to assist with what the company does on a regular basis (various types of verification), but since they found out I have a computer science degree, I have been given the task of creating an IT department. I am now working with the developer and need to organize all the software/hardware for the entire office. I am not sure how to go about this. I am looking for suggestions on set-up, organization, things to ask for, etc.

A few specifics:

Our development is PHP and Java (the latter I have experience with)

We use Lenovo PC's running windows 7, and a Konnect phone system.

We use, I believe, iolo security (but I am not sure about that even).

I recently ordered a few staples that were missing; new mouse pads, better keyboards, speakers, etc, but I have to work from the ground up with organizing software and have a closet full of misc. hardware and wires, along with our on-site servers (I really haven't looked at them yet).

I also need to set up an interoffice messaging system, as well as a remote log-in for me for working from home. (I plan on using logmein) Ideas other than a load of Zip-ties? What is your favorite way of organizing, or best solutions?


You mention nothing about budget, so I'll assume the worst and tell you how I'd do each on the cheap. ;)

First, I'd look at what is required from the department. What services do they expect you to provide? Then I'd start by figuring out how I can use existing personnel to aid me in creating the department, as it's a lot of work for one person to organize, inventory, write policy and procedures, etc. So what are the other people's skills? Does someone seem to not be so busy and have great organizational skills? Hmm, awesome. I'd put them to work inventorying everything you have at your disposal. If no one is available, that is still the first task for you. Find out what your working with and see how you can best use it to achieve the requirements laid out to you for your department. Then formulate a plan of action, which seems like you have already been doing by posting here for help.

Then, with that plan, I'd pass it through the corporate hierarchy just to CYA.

Things I'd be looking at in that plan would be:

  1. Can you use any of the existing hardware and software, or are you going to need to budget for new stuff.
  2. Do you have any manpower? If not, how can you automate things so you're not kept too busy with menial tasking.
    1. Finally, how are you going to meld 1 and 2 together to make the project as time-efficient as possible.

That's essentially how I would start. I would then organize all remaining equipment into an obsolete pile and a potentially useful in the future pile and gain authorization to dump the obsolete pile. Trust me, if it's not been touched in 6 months it will never get touched again and you'll end up hoarding it until hell freezes over and in a small business environment (at least in my experience), space is at a premium.

Once you have the plan rolling, keep tabs on what you're doing and keep asking "why am I doing this?". Efficiency is key to getting a smooth running department and automation is useful if you're low on manpower or it's a one-man show.

As far as what hardware and systems you use, this is pure personal preference but I favor going with brand names (such as Cisco IP Phones and Dell desktops) that have support systems to back you up. Otherwise, you get bogged down in the basics of the IT department. You might also an intranet with a helpdesk ticketing system so people aren't clogging your email or phone asking for help.

As far as messaging systems, there are a few decent open-source intra-office messaging systems I like. You can go from Pidgin to RabbitMQ (free for commercial use also). Or as a PHP/Java house you could always roll your own.

I realize this isn't a very complete answer, but hopefully it's a start and maybe of some use. I do have experience doing exactly what you're doing and am on the home stretch at my current company doing just this on a tiny budget. Beware it'll take twice as long as you think. I thought I'd be up and running in 6 months, but after 9 months I'm about 60% of the way!


This is about the order I'd do things:

  1. Learn about everything. This is without a doubt the most important steps. Talk to the devs about what runs on the servers and how they interact, read the manual for the phone system, follow cables around. Ask some of the employees to make you a quick list of the software that they use a lot, and read up on those programs if they're not things you're familiar with. Make sure you understand who the providers of IT services are, and know who in the company deals with those bills and has access to those accounts. Here's the most important thing to know, though: find out who's responsible for or understands each system, so that if you don't understand it you know who to ask.
  2. Inventory everything, so you have an idea of what you have and what you need. Look in to open-source inventorying solutions, like Tracmor (paid SaS version available at tracmor.com).
  3. Analyze your needs. Are the employees short on computers? Anything aging and needs to be replaced? work with your superiors to find out your budget and make a plan to replace or buy new hardware to fill needs at the moment.
  4. Find out if there are any problems that need to be fixed right now. Talk to all the employees (face-to-face if you can, there's not that many) and see if they're aware of any problems with the IT environment right now. Make a plan to fix those.
  5. Set up communications. It's a small company, so this is easy. Make sure that all of the employees know who you are and that they can report problems to you. Have some kind of formal, recorded way for them to do so. If you're fancy, you could set up a ticket tracker, or just always have them email you and sort the emails.
  6. Now you're in to maintenance. Keep learning more about the systems, spend your free time digging in further, and watch for anything that's running suboptimal.
  7. And this is the fun part: start improving IT resources. Find out what employees think might make their jobs easier or more efficient, and research solutions. There are a lot of products out there (many of them FOSS) that claim they'll improve your business, look in to which ones you think actually will, and make a plan to implement them.

Make plans and keep track of them: having a lot of tasks to do can get overwhelming, so keep them very well organized and prioritize them. When you have a clear idea of what needs to be done and when, it's less stressful.

Communicate: Make sure the other employees know how to contact you, and keep in touch with how things are working and how things could work better. In a technical shop your 'departmental clients' are probably fixing most problems on their own, which can be both a blessing and a curse. Tell them to let you know when they encounter a problem with a system, and to tell you how they fixed it if they did (that way you know how to fix it if it happens to someone else).

There are a lot of free tools that can be your best friend. Look in to Spiceworks, its minimally ad-supported free version will spider your local network, log in to all the computers, and inventory their hardware and software. It keeps track of all this and watches for trouble (out of date software, failing hardware, etc). The whole while it has a simple trouble-ticket system built right in.

I'm sure you've seen a million ads for it, but Splunk really is a useful tool to diagnose those servers, and it's free for a small environment. If the dev staff doesn't already use it, they'll probably find it's a useful tool for them too.