Top 3 Mistakes Startups Make Outsourcing Software Development
If you’re like most web/software startups, then it’s very likely that you’re having to outsource all or part of the development of your product to another party. Even if you’ve obtained the elusive “tech co-founder”, unless your product is very simple, the chances are that you will still need to outsource most of the work under their guidance. After all, you’re the idea person right? The one with the vision… you don’t need to be worrying yourself with the details. You just need to delegate and focus your attention on the big picture right?
The ideal situation of building a development team of your own from scratch in the early days is just too much, too time intensive, and too fraught with difficulties for startups. And that is exactly why many early startups like you look to outsource the development to an existing team. This is also filled with its own set of problems, and so I want to share with you three mistakes that I commonly see startups (and established companies) make.
You didn’t cover the basics when picking a vendor
Here’s the deal. If you’re new in business and technology, you probably haven’t had many opportunities to learn how to pick vendors for a business, much less a software developer. It’s important to realize that picking a software developer is one of the more complicated types of choices to make, especially if you are non-technical yourself.
What you need to know is that, in this industry, it’s really easy for anyone to “hang out a shingle” and go into business as a startup software development shop. This can take on many forms that you need to be aware of. You might end up hiring a moonlighter, short term freelancer between jobs, a student waiting to find their dream job, a design agency that is contracting out the heavy lifting to other companies, or even the local IT company that is doing the same. Much of the time it can be difficult for you to even tell what type of company you’re looking at if you aren’t familiar with the landscape of the industry. There are even people who try to make money teaching other people how to “broker” your project to offshore outsourcers without your knowledge. If you are intending to hire one of these types of people then it’s all ok. But a big problem arises if that wasn’t your intention at all or you didn’t properly understand the risks involved, and you rushed into a relationship too fast without checking them out properly.
You really need to do your due diligence – check references, see examples, and so on. You might think that’s common sense, but I recover many projects from both entrepreneurs AND experienced business people who didn’t do these basic checks and ran into a lot of trouble. So do yourself a favor and don’t take it lightly.
You didn’t set things up in a way that would protect you
Imagine you have just spent a big chunk of your capital, gotten half way through a project, and have realized now that it’s not working out with the developer you picked. Maybe they got a job. Maybe they vanished. Maybe something happened in their personal life and they don’t have time anymore. Maybe they are in over their heads. Have you set things up so that you can easily transition your project to another team?
I’m willing to bet that you haven’t. Do you know where your source code is? How do you know 100% for certain that you have the most current code to match what is on your site? Are you taking their word for it or have you had that verified? Did you have them create the proper documentation to make a transition easy? Do you have access to the systems that it is running on? Or is it actually all running on THEIR systems? Did you have your lawyer check all your contracts early on to make sure you actually own what you’ve paid for (a common mistake)?
One pattern that I’ve seen is that, when it gets to the point that you’re ready (or forced) to switch companies, the relationship is past the point of just being toxic. You may find out that you have no leverage in the situation. For a startup it’s all about time, and you can lose it fast this way, let alone the investment of time and money already made.
You didn’t pay attention to the details
As an entrepreneur your primary focus is pleasing your target market. You want your technology to look and feel like the best and the user interface to be as smooth as possible. So, it’s understandable that your main focus is on the look and feel of the application, especially if you are non-technical. Problems start to arise when this is all that you pay attention to, though.
I’ve noticed that it’s very common for an application to look great in the UI, but be built absolutely horribly on the inside. This happens frequently when an application is built by a design-focused agency that has a weak technical team, for example. You know the old saying “you can’t judge a book by the cover” don’t you? It’s true in applications as well – just because something looks great doesn’t mean it will perform well, or be easy to modify later.
There’s a lot of marketing material out there right now from platform as a service (PaaS) companies that make it sounds like you can just upload any software to their platform and they will magically make it support an unlimited number of users. The problem with this is that it tends to create a mindset that you no longer have to worry about the quality or performance of the programming being done. But suppose you launch your new startup, push a bunch of funds, energy, and time into marketing it, only to find out that your precious new customers are complaining about slow running pages, or you find out that your PaaS company is making you pay so much money that it crushes your finances. Making sure things work right from the inside out at each stage can help you avoid catastrophe.
When outsourcing software, there are many problems that can come up; I’m sure that you’ve heard some of them if you’ve been in the startup community for long. I’ve listed three that I see most frequently when recovering failed projects for my clients. Keep in mind that most of my clients are established companies who you would think would never make mistakes like these. But they, at least, have constant revenue to help them overcome problems like these. For your startup company though, when you often have only one shot at getting it right, these things are even more important.