PART 1
If you read nothing else in this blog, read this post. You’ll quickly discover the biggest and most common outsourcing mistakes, as well as how to avoid them.
Of course, most of it is common sense. Probably 30% is strategic or tactical advice. The important thing is to internalize these issues before you start spending your hard-earned cash on hiring someone you’ve never met before.
Mistake #1 – Outsourcing for the wrong reasons or at the wrong time
If you’re anything like some of the business owners who come to us asking for help with a software project, you may be tempted to be a little bit gung-ho with the whole thing, shoot from the hip as it were, do it now and ask for forgiveness later.
Whatever metaphor you want to use, CALM IT. Outsourcing isn’t something you should just jump into; it requires proper planning and forethought if you want to avoid disaster.
There are only five situations when you should ever consider outsourcing. Four will increase your success, and one will save your rear end from potential disaster.
If any of these five fit your situation, you can consider it. If not, then outsourcing isn’t for you:
1. You’re creating your first software product.
Outsourcing your first software product can be risky, but it can, in specific circumstances, be an excellent decision. In general, you should only consider it if you have a very well defined specification for your project.
2. You need to create a new, or additional, software application.
This is usually a very easy type of project to outsource, because the scope is clearly defined, and you have existing documentation or even code (from your core product), to give to your new team.
If you need a testing ground for outsourcing, there’s arguably no better project than adding features to an existing product.
3. You want to support or augment your in-house development team.
If you already have an in-house development team, and you’re considering outsourcing, then THIS is where you should start, because you can get used to this new process, iron out any issues, and optimize the workflow, without delegating mission-critical tasks.
4. You need to provide ongoing maintenance programming for an existing product.
If you’re looking for another safe way to test outsourcing, you need someone to handle non-critical feature upgrades or legacy versions of your software, then this is a great place to start.
5. You need to cut the burn rate or your company will go under.
If you need to cut your burn rate in order to survive, and one of your major cost centers is software development, then outsourcing is not an option, it’s a necessity. A few pointers:
- Have a transition period where your in-house team slowly hands over their responsibilities.
- As hard as it is to do, keep an open dialog with your existing employees, and do your best to keep them on board.
- Do your very best to avoid this situation from arising in the first place, by keeping a close eye on your costs, and making the transition to outsource BEFORE it becomes necessary in order to survive.
Mistake #2 – Outsourcing to the wrong place
Most people seem to think they’ll get the same experience wherever they outsource their project. This couldn’t be further from the truth.
There are so many different places to outsource your project, each with their own cultures, management styles and expertise, so picking the right place is more important than you’d think.
For a detailed breakdown of the differences between countries, check out this blog post from July.
Mistake #3 – Picking the wrong vendor
Unless you pick your vendor carefully, you could end up with a serious problem on your hands.
For the sake of simplicity, we suggest you use this 3-step formula to help you pick the right vendor.
1. Search – Find vendors you want to consider
Start by coming up with a small set of criteria, so you can select a broad range of vendors with the potential to be a good fit.
For example, you may decide vendors are only worth considering if:
- They are specialists in iOS and Android development.
- They have experience creating cloud-hosted consumer applications.
- They’ve been around for longer than 3 years.
You want to have no more than 20 vendors in your initial list, otherwise it’s just going to get unwieldy and be more confusing than helpful.
2. Assess – Assess your short list
Secondly, you want to create a shortlist of no more than 3 vendors you can thoroughly investigate.
The three most important criteria you need to assess at this stage are:
- Technical skills
- Experience with projects of the same scope as yours
- Overlap OR compatibility with your workday
3. Choose – Choose the winner
You’ve now got your short list of vendors who all fit your most important criteria. The question is: how do you choose a winner?
Honestly, you’re going to have to look at each option in detail, and use some sort of objective process to rate them against each other.
You should use a process that works for your project, and you might need to make your own individual changes. But, here are the most important things we suggest you do:
Get some testimonials; what do their other clients think?
Read some resumes; what skills do their engineers have?
Investigate rates and terms; how do the quotes match up, are they within budget, do they seem reasonable?
Do a test run; get them to do a small teaser project to see how you work together.
Next time we’ll continue laying out the mistakes to avoid, to ensure your project runs smoothly.