Development (as a non-developer) Outsource v Inhouse


4

What are the pitfalls and advantages to outsourcing the development of a start up's product. I am not a programmer, my background is in business. I am more inclined to outsource as I am not located in a tech hub, and I don't know any programmer-types, let alone the kind with the skill sets that I would want to incorporate into the company. If I do go the outsource route, I would eventually want to have all the back-end work performed in-house. Is is worth the effort to try to assemble a programming team to do the development? I would assume an investor would prefer to see a team associated with the company? Does having a 3rd-party developer detract from the viability of the company? (The one that has survived the bidding rounds thus far is very reputable) And last of all, what lines of communication/communities can I go thru to assemble a programming team. This will have to be done at some point. I am aware of E-Lance and similar cos however they seem overladen with overseas companies (only want to assemble a intra-national team that can work out of a centralized office...eventually). Another disadvantage I see going thru this route of communication is the amount of IP I would have to divulge to a large group of people that have the abilities to run with my concept. Does a community of developers specifically interested in start-ups exist?

Development Outsourcing

asked Jul 5 '11 at 13:05
Blank
Eric Littleton
107 points
  • Sidenote- Im in the great state of KY (the next silicon valley, or so Im told) :) so non-virtual communities not in my area will be non-applicable – Eric Littleton 13 years ago
  • Look into doing development in Louisiana, our Digital Media Tax Credit (for which pretty much any software qualifies) is unreal - 25% expenses, 35% payroll and there's quite a few companies down here that are great at helping start ups. I'm not vested in this at all but if you want me to point you to some people you can email me at gmauer over at gmail. Plus it's close and you can always drive down (and there are far worse things than a week-long trip to New Orleans) – George Mauer 13 years ago

3 Answers


4

(Disclaimer ) I run a venture development company, working with industry experts to create their vision, so the answer maybe a little baised.

Basically if you can have an in-house team of gun coders that is great, if you can't it isn't the end of the world. There are companies (like mine) which can help you out.

My advice would be to get someone who is the "key technical brain"/CTO onboard with you (or it could be you with some effort and independant advice).

  • This person has to understand the gap between the technology and the users/clients, where it sits, what the decisions and trade offs are and why they are being made ... this should be inhouse to you.
  • Word of caution. Anyone who thinks they can do it all themselves is not suitable for this position ... a lot of developers have the "hero coder" problem, hire these guys and let them go on an aspect of the code, don't partner with them as they will end up holding you back.

The remainder can be outsourced ... carefully. You have a few options here:

  • Roll your own team. You can either put together a team from a range of websites like Stackoverflow by hiring, or from oDesk / eLance etc. This has the benefit that everyone on the team works for you and you can control who is in and out, it is also likely to be cheaper on an hourly basis. If your CTO has both the management ability AND technical design ability it is worth looking at this option to outsouce the getting it done component.
  • Hire a company which will roll a team. There are a lot of offshore companies that have a lot of developers available, if you have a VERY solid spec, they can produce something that will meet the spec. Your CTO / other staff will need to be able to manage their workload, write the specifications and drip feed the project ... too big all at once and you run the risk of one side or the other getting lost in it all (plus your cashflow will disappear quick).
  • Work with a venture development company. (biased bit) Companies in this category should have more than just arms and legs to throw at a project. They have the ability to work with you and your CTO (and your business people), contribute heavily to all aspects of the process including advising on business models, technology choices, working with the trail market, suggesting changes and new features, understand prospective markets, their real goal is to make your user base evangilists for your product. That said your CTO still need to be in control, these groups will have the urge to go out and develop everything under the sun, solve every problem (and want you to pay for it) so you need to have someone who can make the call about what is in and out for the week/month and quarter as well as set (and reevaluate the 12 month and 2 year objectives).

With all of the options I would ensure

  • You have a very good requirments AND technical design specification. This is the key thing to get right and keep continually working on improving. Have soneone you can say "I would like them to have the ability to do X" and the designers should be able to say "here is how it can happen, here are the problems you will face, this is what it should look like". Keeping yourself in this conversation even if you aren't driving it.
  • You have a third party testing / verification company if you can afford it ... or understand that you will be doing that yourself. Having an independant voice who is not the developer or designer saying "this isn't right" is very important and avoids a lot of situations that otherwise can end in deadlock. Have a look at oDesk and eLance there are companies there that seem to be setting themselves up well there. We use a local company and it works well to keep us inline with our clients.
  • Contract is right. I'm not a lawyer but this is a bare minimum.
    • Specifically, you own the IP to the bits you care about.
    • Ownership of the other bits contributed (library code) for continued use on sunset. There may or may not be license or purchase fees at that point but get it clear what it will be upfront.
    • Agreed sunset rules. What happens if you stop operating, what happens if they stop operating.
    • Source code in Escrow, updated frequenetly ... Or own the source code control :)
    • If your offering shares in your company as part of the deal (good idea to a limited extent). How many shares, what conditions are you offering them under etc.
Ok, thats long enough ... hope that helped ... if ask more questions and I will try and give more useful answers.
answered Jul 5 '11 at 15:46
Blank
Robin Vessey
8,394 points
  • Robin Vessey - Pure gold. I'd like to learn some more about your company, can you pm on this forum? If not send me an email, its listed on my profile. Thanks again for the insight!! – Eric Littleton 13 years ago
  • Glad I could help. Have a look at my profile, I have links to the companies pages and twitter etc. – Robin Vessey 13 years ago

2

The possibilities vary based on your planned route for getting to your finished product.

  • If you're ready to build a prototype or MVP, outsourcing is a great option and shouldn't reduce the viability of your company. And, it's not a bad way to make developer connections, which can help you build a team later. (Disclosure: I own a firm that does this.)
  • If you're ready to build a full version, building your own team is what you should be completely focused on. The value they'll bring from being completely part of your company's successes and failures, your vision, can't be matched by outside parties, no matter how skilled.

There are lots of developers out there who love working for startups and plenty who will only work for startups. Hiring for a startup is like any hiring: your network is easiest, resumes hardest. You can do a few things to limit the field and attract the right folks if you're gathering resumes:

  • Find places to post your jobs frequented by startup types, e.g., 37 Signals' board.
  • Remember being a startup is major selling point, say it loudly and often, and ask for startup experience.
  • Ask for technology experience popular in startup circles, i.e., not .NET, not JEE.

Elance can work for assembling a programming team, but it's not a great solution as their contract requires you keep Elance as a middleman for future work between the same two parties. It's also a poor fit because—as a side effect of the quality of work available there to developers being abysmal and the site's filtering approach being not much better—the percentage of local folks on there thoroughly committed to just freelancing is probably very high.

If you're looking for alternatives for finding outsourcing, I'd try also asking on Quora who all the great developers are who build early product versions for early stage startups. There's also a number of questions already there on finding good developers/technical co-founders.

answered Jul 6 '11 at 00:21
Blank
Yuri Gadow
366 points

1

I think it depends on the complexity of the startup idea you have.

If the technical side is not risky in itself (no technical challenges, proven feasibility) then outsourcing / offshoring can be a good option.

For a first version, the fact that a product has been developed in-house or not doesn't matter much, ask Kevin Rose who outsourced the first version of Digg.com to someone in Elance.com.

Also, outsourcing can be a lesser problem than not being able to develop the project at all if you don't have access to developers in your area.

I run the startup TaskArmy.com, and I do a fair deal of outsourcing myself. I am happy to add more details to my answer if needed.

Good luck!

answered Jul 5 '11 at 15:46
Blank
Aymeric Gaurat Apelli
221 points

Your Answer

  • Bold
  • Italic
  • • Bullets
  • 1. Numbers
  • Quote
Not the answer you're looking for? Ask your own question or browse other questions in these topics:

Development Outsourcing