How to engage with a software development company

I’ve been running Atlas, a software company, since 2007. One of the biggest challenges we have with the majority of our customers is helping them to understand the software development process. So I’ve decided to create a handful of blog posts dedicated to the process a prospective client of a software company should undertake in order to make sure that they choose the correct provider, and more importantly, get a working app at the end of the process.

I could write about software development for hours as it’s a huge topic. So for the purpose of this initial series of posts I’m going to concentrate on these steps:

  1. How, and more importantly when, to start your search for a software development company
  2. The specification – getting your app right first time
  3. The process of signing up to work with your chosen software company (including getting the contracts right!)
  4. Kicking off the project and steps to ensure you’re kept in the loop and maintain control of your project

So, let’s start with the how and when of finding a proficient software company.

When to start your search

Most software companies are booked up for six to twelve months in advance. So don’t wait until you’re ready to kick off your project to start your search, get started now.  You might also have to kiss a few frogs before you find your ideal partner, and this process can take weeks, so the sooner you start the better.

How to go about your search

Do your homework

Before you start your search you’ll need to have three key pieces of information to hand (in order of importance):

  1. A time scale for implementation
  2. Your desired budget. A range is absolutely fine. So you might say ideally £10k but I can stretch to £20k
  3. A high level overview of what it is you’re looking to have built. It doesn’t need to be a detailed specification document (more on this later), but it should give the potential supplier a solid idea of whether they have the skills and knowledge to assist you.

Number 1 is perhaps the most important, followed by number 2. If you approach a software company and want to have something created by tomorrow and your budget is a crumpled up £5 note prepare yourself to be sent away!

Start the search

You’ll want to line up at least three companies that look like they might be able to provide the level and type of service you need.  I would recommend the following approaches for finding a software company in order of most ideal to least:

  • Look for recommendations from people you know who have previously worked with or for a software company and can recommend them
  • If you know what type of technology you’re looking to use, there are often partner schemes software companies can subscribe to. For example, my company Atlas uses Microsoft .Net technology and is a Microsoft partner, so we’re listed on the Microsoft Partner UK website.
  • Use business forums, such as www.reddit.com/r/business or www.ukbusinessforums.co.uk and reach out to strangers in the hope of receiving a recommendation
  • Hit Google, type “<your location> software developers” without the quotes. Obviously, if you live in the middle of the countryside you might want to swap <your location> with <nearest big city>. Being in close proximity of your software developers isn’t essential, but face to face meetings are often useful, especially if this is your first software project. Make the distinction between companies that are paying for their Google listings (sponsored adverts) and those who appear organically. Those paying to appear on Google in the form of sponsored listings are more likely to be pro-actively looking for work.

Short-listing software companies

Software development companies are not the same as web design companies. Web design companies will lure you in with their pretty websites and whizzy graphics. Software companies?  Not so much. Some of our competitors have terrible websites, but that might mask a team of the most talented individuals you could wish to work with. Not only that, the good companies are probably too busy building solutions for customers to have the time to keep their site up to date! So rather than get too hung up on design at this stage (unless it’s a core part of what you’re trying to achieve with your project), you should instead focus on:

  • What examples of work (aka case studies) can you look at, and more importantly have they performed the type of work that you’re looking for?
  • What type of customers do they typically work with? If you’re a start up chances are you don’t want to choose a company that seems to solely work with big name brands, you probably won’t be able to afford them
  • What technologies do they use? If you’re looking for open source, say for example WordPress, you don’t want a Microsoft partner
  • How big are they? A small team might be fine if you only need a simple app. If you’re looking for a backend system to manage millions of pounds of inventory you want a sizeable team dedicated to your project.

Using the above indicators to guide you, build a short list of at least five companies that you’re going to reach out to. You should then contact them with the brief, budget and time scale you already have down either via e-mail or through their contact form. Some of the larger, more established, software companies will have you complete questionnaires on their website before they will speak with you. If your budget is upwards of £100k this shouldn’t be daunting, they’re just making sure you don’t waste their time and more importantly that they don’t waste yours.

Now you’ve reached out, you sit back, and wait to see what comes back. You should judge a company based on the speed and quality of their response. If they sound pretty uninterested at the outset there’s a very strong chance you’re about to waste your time, drop them. Ideally you’ll receive an initial response quite quickly thanking you for your enquiry. A more detailed follow up response should follow in 24 – 48 hours.  Based on the feedback you will soon whittle down your initial candidates to two or three that you go into more detailed dialogue with.

The initial call or meeting

If one or more companies respond positively to your initial enquiry they will want to set up a meeting with you to run through your brief in more detail. This is an opportunity for you to explain the context around why you’re looking to undertake your project in more detail and provide more context. You might naturally be inclined to ask for a non-disclosure agreement. At this stage it’s really not worth the time and effort. Software companies build software, they’re really not interested in stealing your idea for the “next big thing”.

So, you’ve set up a meeting, who can you expect to attend? Likely candidates include:

  • The CEO/MD –  if the software company is quite small they won’t have a dedicated sales person and so you can expect the MD to turn up and play sales guy. I know this because I used to be this guy!
  • The sales guy – you’ll find sales guys in medium to large software companies. Generally not a useful person unless they have a technical or business analyst background
  • The business analyst – the person who will be responsible for defining how your app works and conveying this to the developer(s).  This person needs to have incredible communication skills.
  • The project manager – The person in charge of managing resource and making sure that your project is delivered on time
  • The lead developer – The person who will perform the technical implementation for your app

During the meeting you’ll want to meet the people you will be working with and get a feel for how they work and whether they’re a good fit for you and your project. You’ll be spending a lot of time with these people so it’s crucial that you like them, and that they understand the “why” of what you’re looking to achieve more than the “how” at this stage.  A good team that has a reasonable amount of confidence that they can deliver will be able to show you examples of similar projects to build your confidence. They’ll also get fired up, and want to talk at great lengths about the type of work they can do to deliver value to you and your app.

From this meeting you want to get feedback on the following points:

  • How might they go about the implementation of an app to meet the requirements of your brief at a high level?
  • What ball park would they suggest this project might cost?
  • How long will it take?
  • Can they give you examples of previous work?
  • What would be the typical structure of a project they would undertake, and who would be involved on your particular project?
  • Do they have any customers you can speak with to obtain a reference?
  • Can you see a copy of their standard development agreement to check through ahead of any detailed conversations?
  • Do they offer any warranties for the completed app? For example, we provide three months free support and hosting following completion of the project in the form of a warranty
  • What is support and maintenance going to cost?

During the meeting you want to be strongly pursuing reasons not to use the company sat in front of you. If something doesn’t sound right, or they make statements that seem too good to be true – well, you know the deal.

After meeting with all of your shortlisted suppliers you need to make a decision, and then the real fun begins!  In the next blog post I’ll talk about the steps that will unfold after you have chosen a supplier, which includes the specification document – arguably the most important document in the entire process.

Read More