views:

747

answers:

6

I'm a production director in a web design studio and we need to build a new team of developers for iPhone Apps. Can anyone help me with this? Should we get full-time or freelance people? What are the pros and cons of each?

+14  A: 

It depends...

Hire Freelance if the is work temporary in nature - i.e., it'll only take 3 months to build an app. Hire Freelance if you don't know whether you'll have a job for these people in a year, or if there is no need for developers to support the app in the future.

Hire Full-Time if development is central to your business proposition, if you wish to retain knowledge in your organization, and if you wish to have continuity - which is useful for building related/integrated apps, or supporting existing apps.

David
thanks David, your answer and lassevk answer, is really help me in my decision
cacique
+5  A: 

I'm guessing there will be many distinct answers here, but here's a couple. This is written as though you will hire the people full-time.

Pros:

  • Expertise learned during development of one app can be used in the next. With freelance, you risk not being able to hire the same guy the next time
  • Less risk of having to replace a developer mid-project or between projects
  • People that work in your company might feel more of an ownership for the product, which might result in higher quality

Cons:

  • Really need to have work for the all the time, otherwise they're an expense when roaming free
  • Depends on freelance cost, but can be higher cost with full-time hire, social expenses, more security, etc.
Lasse V. Karlsen
thanks lassevk, your answer help me a lot!
cacique
I actually have found that in-house costs (total cost, direct plus indirect) much less than farming out.
alphadogg
+3  A: 

Everything strategic for your organization should be in-house. By strategic we mean "what we will make the difference between me and my competitors".

Remember that you can bootstrap an in-house team with freelancers to get up to speed faster.

Edouard A.
+3  A: 

Both, if you have to maintain the applications. With freelancers you can get much higher quality code and get to market much faster. Those high-end freelancers are difficult to keep interested, so you need to have some in-house developers to take over.

You need freelancers who are interested in creating maintainable code. Look for experience in test-driven development.

You need in-house for the domain experience and the relations with customers. You need a certain size before it makes sense to have an in-house team. If you only have one or two in-house developers it is difficult to keep them up-to-date with modern development technologies and methodologies.

[response to comments] Attracting high-end in-house developers is more difficult and time-consuming than attracting high-end freelancers. They tend to have a nice in-house job, though with the current market conditions it is easier than a year ago.

Stephan Eggermont
I disagree, although not voting down. But, freelancers != better code.
alphadogg
Didn't say that. You can get better code from the high end freelancers
Stephan Eggermont
Ah. But, you also get good code from high-end in-house developers, and they cost less than your typical high-end freelancers...
alphadogg
Once you factor in the cost of employing someone (i.e. benefits, cost of the space, coffee) beyond their salary, that statement regarding cost is unlikely to be true. However, when you employ your knowledge base, you can avoid some unexpected costs and know what the bottom line is.
Elie
I have done that. Generally, I have calculated it at about 30% on the hourly rate. So, a 90K dev will cost me $53/hr total. It's actually pretty hard to find experienced and reliable outsourced talent at that rate that could produce the same quality on the same timeframe as a local hire. How much do you think a good iPhone dev in India would cost per hour once you calc the hours of dev, plus the expense reimbursements, etc?
alphadogg
That's not high-end, or is the economy that bad?
Stephan Eggermont
+7  A: 

As a CIO in a small business, I am confronted with this dilemma a lot. You would want to favor farming out work in scenarios that involve one or more of these factors:

  • Niche/esoteric skills
  • Time-to-market pressure
  • Overwhelming workload
  • One-off project

But, there's more to developers than churning out code. Being able to understand requirements and interact with business users comes from familiarity with the people and the processes. In-house can help in the long run. The cost of an external developer will usually be about four times that of an in-house developer.

alphadogg
Nice answer. You seem to have some experience.
Phil
+4  A: 

The question to ask yourself is this: is software development my core competency. It looks like you're more into design so it might be better to use an outsource model, either by hiring freelancers or subcontracting to a development company.

Using freelancers allows you to change rapidly, say if the project needs to move to other platforms, change direction, shut down, etc.

Outsourced companies are good if this is a one-off project.

Inhouse is best for long term business development, with freelance, short-term hires for developing niche elements.

Remember, when hiring anyone, assume they are going to leave after a short time, so make sure they document what they do, how they do it and how they test it. That way, when they do leave, others can pick up where they left off.

Skizz

Skizz
thanks! really helpful
cacique