1. Technical Ability
First of all, figure out to the best of your ability whether the firm can actually do the work. This is by far the hardest aspect to judge – most software developers don’t even know themselves whether they can do something (or indeed whether it can be done at all!) until after they’ve done it for the first time.
2. Approach to Project Management
Amongst IT consultants, you’ll find two different groups when it comes to project management. The first half take a few notes down on a scrap of paper, then work away by themselves, bringing back a product that vaguely resembles their notes. The second group meets you several times to gather a full specifications document, then as development progresses they meet you regularly to discuss progress and show what has been done so far. Have a guess which group will get you a better product.
3. Specialisation
No software developer is good at everything, and you should be wary of any that tell you they are – you’ll find they just don’t know how much they don’t know! In looking for a consultancy, search for one that specialises in the area you’re after. If you want a marketing website don’t ask a database expert to build it, as it won’t be any good. Likewise, if you’re after a customer management database (commonly known as a CRM), a firm specialising in marketing websites won’t do the best possible job.
4. A Good Portfolio
Taking a look at a company’s portfolio will tell you a lot about them. If they’ve got a portfolio page full of projects previously completed, that’s a good sign that they can follow through on their promise. Go and have a look at the results of their work. You’ll be able to judge some aspects of the quality, though do keep in mind that the client’s budget does impact on the result.
5. Delivery Time
There’s no point in finding the perfect consultant that will do a fantastic job if they’re busy for the next three months and you need your project done in two. A consultant with a busy schedule generally means they’re popular and do good work. On the flip side, it can mean that their project management skills are lacking – this is definitely a double-edged sword!
6. Quality
If you have access to the portfolio of a consultant, you can have a look and check some basic things that are tell-tales of quality, no matter the area of development. Is spelling and grammar correct? Do elements on the page line up with each other? These sorts of things can be checked by everybody, not just other developers.
Some developers will also share programs with each other (and sometimes pieces of programs, called libraries) in a community known as open-source. If a developer is willing to share their work with others, this is a general indication that they’re not ashamed by the quality of their work. This, of course, is a good sign. We share some of our code on both GitHub and BitBucket.
7. After-Development Support
Before entering into a contract with a development firm, make sure they can provide support and additional development down the track. You’ll probably have questions about the software down the track, and it’s probable that you’ll want additional development work done at some point. Any firm worth their salt will provide a support and maintenance contract, though you’ll generally have to pay for this privilege.
8. Reputation
Once you have a few firms short-listed, it’s worth checking out what other people think of them. Search for their name on Google and try to find reviews, both positive and negative. Alternatively, ask around your networks (friends, business contacts, etc.) to see if anybody has heard anything good or bad about the firm.
9. Professionalism
Whilst wearing a collared shirt doesn’t have any impact on a software developer’s ability, you’ll want to find a consultant who looks presentable, is reliably on-time to meetings, follows up emails quickly, and gives you the impression that they take business seriously.
10. Recommendations
By far the best way to pick any IT consultant is to get recommendations from people who’ve previously engaged one. They’ll be able to tell you straight away whether a firm was easy to deal with, whether they got the work done, and most importantly, whether they would choose that firm again.