Startup diary: Trust, but verify, if you don't want to lose a lot of money
Last week I wrote about a new feature we have just launched into private 'beta' (that's startup speak for 'not quite ready'.) We're helping our clients build their event websites quickly and efficiently with a website builder focused on the needs of event managers.
I wrote last week about how we justified building that feature from a business perspective by making sure it could deliver value in multiple ways (the "two-for-one"). This week I'm going to write about how we got that feature built.
We decided to build it internally. But that meant we had to bring in external help to build other features which needed to be progressed. Building something internally, especially when you have technical staff, in a small startup is very dependent on the individuals doing the work. How to get internal builds right is a topic for another day. Today we're going to worry about getting the best out of external software developers.
This is a challenge almost all startups face. Developers are really expensive. Even if you are a developer and a founder (as I am), you can't really hide in your bedroom coding - there's a business to run. The challenge is even greater if you are not technical. There are many horror stories out there of startups spending all their money on low-quality software, and the business ultimately dying. That is unnecessary.
Over the next few weeks I'm going to cover the basics of getting value for money from your external software developers. This will mostly have a startup focus, but you'll find this useful for any sort of business.
So you want to build a software product. Today that means an interactive website and a mobile app, at a minimum.
Who's going to build it for you?
There are three main classes of development teams which you can bring in: consultancies, outsourcers and freelancers.
Let's look at each in turn under the topics of finding good ones, cost, management effort, operations and "tearing your hair out".
A software consultancy is a domestic agency which can provide full project management and delivery of your product. As a startup you can't afford the really big ones that are international, and you probably can't afford the ones that are 50 people or more. These companies aim for margins of 50pc.
The really good ones - the ones that will build you a great product - are well run and actually get those margins, and are correspondingly expensive.
They prefer large established customers as clients and they charge on a time and materials basis.
If you are so well-funded you can afford such a consultancy, you might be better off finding a great CTO and building an internal team.
Finding consultancies is easy - they advertise and go to events. But if one does take you on for a small startup project, it's probably because they are suffering a temporary pecuniary embarrassment (with apologies to Mr Micawber) and as soon as a big client appears will move their best people away from you. Startups are hard, and business is not fair.
Your best hope for a consultancy is to find one that is relatively new, becoming successful, and still values smaller projects. It is absolutely essential to get references from other clients.
If you find a consultancy like this, it will accelerate your product development and your management overhead will be relatively low.
However, you must still do quite a lot of management - you don't get to hand over everything.
You'll need to specify your product, attend weekly meetings (they do hold weekly meetings right? If not, don't go there) and validate outputs. Trust, but verify, if you don't want to lose a lot of money.
You will tear your hair out a little at times, but since you can always get the owner on the phone, you should be OK.
The great thing about using a consultancy is that they can bring all the pieces to the table. For example, you'll need a graphic designer, but not on a full-time basis. They are needed initially for product conception, and then intermittently to handle modifications and early user feedback.
A consultancy can keep a designer busy with multiple projects. This dynamic applies to all sorts of specialists.
You'll also get a senior technical person to run the project.
Beware agencies which use project managers who are not sufficiently technical. Developers run rings around them to the detriment of the project.
I was a developer, and developers can't resist trying out new technologies. Startups should use old boring technologies - they already have enough risk.
Ideally you want a single point of contact, and for that person to be 'T-shaped'.
This is a term used by the management consultancy McKinsey to describe technical people who have moved up to roles that require people skills.
They are deep and wide, the perfect profile to run a software project.
Next week, we'll look at using outsourcers - here be dragons!
Metrics: this week we have 67 open issues, and 190 closed issues.