Let’s cut to the chase.
Hiring developers can be a nightmare. There. I said it.
Do you contract someone in at a higher rate, but have the flexibility to get rid of them should your circumstances change?
Do you hire someone, and then hope they possess all of the skills you need to get your products built?
Do you hire a team of developers, only to find that there are massive peaks and troughs in their workload so you’re spending out a ton of money on monthly wages, and then contractors when you peak out?
Or do you hire a load of contractors, but find them leaving at the most inopportune of times?
Tricky isn’t it.
Most large companies will find that they’re hamstrung by opportunity cost and it holds them back from the very innovations that could help them keep pace with the market, often at crucial times. That, or they’ve hired a team with fairly specific skill sets, but their needs have changed, technology has changed. Do you fire or upskill your developers?
Most small companies, though more agile, don’t have the cash to hire contractors normally. Thus they end up hiring someone multi-skilled (and by their very definition, multi-skillers will be a bit of a dilettante and want to use your site/product to round out their programming skills). This is how products and sites sometimes end up with about 10 different coding languages in them and end up a bit of a mess.
An alternative is outsourcing. You can hire the developers with the skill sets you need to carry out day to day work (or retain your existing team that has the BAU (Business As Usual) skills), as well as getting guys onto your non-BAU projects on an ad-hoc basis.
The primary advantage of this is that you have fluidity. You’re able to meet demand before it arises by working with an outsourced partner to put together a roadmap, to ensure you’ve got the resources required and booked for everything you need. As the outsource company is the one that’s paying the devs, and getting them on other projects when they’re not working on yours, you’re passing on that ‘peaks and troughs’ headache to them.
The other advantage of this is that they’ll be cheaper. If they’re working on other projects when they’re not working on yours, they’re bringing in a revenue for the outsourcing company.
You also get an entire team at your disposal to work together to get the job done from beginning to end, or developers retained to just work on your BAU development. This gives you the consistency you’d get by hiring your own developers (or team of them), but at a lower cost.
The disadvantage is that with some developers, they’ll bump you down the list in favour of a more lucrative job. Others will look to take the money and run once they’ve done a job.
To combat this you need to check out their customers, check out the products, get them to run a test project, get references, etc. Any reputable developer will also allow you to test the coding skills of the guys that will be working on your project. All of us know at least one developer, so they should be able to sit in with you when that happens, it doesn’t take long.
For many people, it’s the only way they could get an Agile team with an onshore/offshore mix for around £1500 per day on a project, or a developer to work with them for £175/day.
The other beauty of this is that these guys will have worked on a range of projects, and as such will have a wealth of experience to bring to a build.
When you have a Product Manager working on your future iterations too, it saves you having to continually scope new work, and they can look around the market to magpie new features to add to your site/product to keep you ahead of the competition. They’ll let you know what they can do to improve the product, scope out improvements for you at the start of each month for approval, and generally become self-managed (without the tinkering and ten different types of unnecessary code in one product).
If you don’t believe me, look at the way you’ve been working, look at the stack of jobs to do, how many requests you get for new features, and how much of it ACTUALLY gets delivered or trialled.
An outsourced contractor market means that the multi-skillers that can often kill a product or site get to work with other developers to help improve their skills.
The internal dilettante in them is also satisfied because they have a stream of different jobs to work on throughout a year.
Win-win for developers and companies, yay!
Kris Jones is Head of Sales & Marketing at Innovify, a web development partner, an innovator of new products and processes for clients, startup incubator and all round bunch of good guys. If you’d like to get some advice or a free audit on the products you want to develop, get in touch at [email protected]