One of the biggest challenges our clients face is trying to decide what work belongs in-house and what they should outsource. Every option has pros and cons, and I find myself weighing them out with clients nearly every week. I thought I would put my thoughts in a blog post so I can stop repeating myself.
When companies set out on a big online project – building a piece of software crucial to their business – they are faced with a huge range of options. There are overseas contractors earning less per hour than the guy who tears your ticket at the movie theater. On the other end of the spectrum, there are world-class interactive agencies with architecturally significant offices, hip employees, and Ritz Carlton-like service. Somewhere in the middle, there is the option of building up your own in-house team.
Each of these three options has draws. $12/hour software development sounds too good to pass up. “Even if they are 1/5 as efficient as a local team, that would still work out to a reasonable $60/hour” you tell yourself. On the other hand, after a glass of their premium, green tea infused, mineral water, a good interactive agency will leave you convinced that they are the only people in the world capable of handling your unique challenges. An in-house team offers control, and cost savings, which are hard to find in an agency relationship. It’s a tough choice, but an important one.
So, I’ve put together this brief guide that explains the pros and cons of each approach, and which types of projects are well-suited to each.
Contractors

Pros
- Many contractors are truly great developers, but they’re charging half as much than they would at an agency
- The relationship will be a little more casual and flexible. I know a contractor who was paid in hundreds of pounds of nuts and seeds. Things also get done outside of the typical 9-5 work hours too, which might be nice if you’re a night owl.
- Contractors spend less time defining the project, since it isn’t billable time for them. If the contractor underestimates the workload on a fixed-price contract, you save.
- Contractors sometimes will put in crazily cheap bids for projects if they are broke, or desperately want to add your name to their portfolio.
Cons
- It’s hard to tell which contractors are great, and which ones aren’t. Portfolios don’t necessarily speak for themselves. It is never clear how much of the finished project the contractor was responsible for, if the project was delivered on time, and how reliably it worked after delivery. If you don’t work in the software field, multiply this problem by 5.
- The relationship can turn sour quickly. I know a lot of people who have been burned by contractors who simply got a better offer and abandoned the project. You’ve seen The Social Network, right? Studies have found between 50-60% failure rates for contract software projects. You have to be comfortable with that risk.
- Contractors spend less time defining the project with you up front. You might not get exactly what you want, the timeframe could change drastically, or a better solution to your problem might be ignored. Contractors are typically focused on execution, and not strategy.
- Contractors stop being contractors and might not be around for ongoing support.
Perfect for
- Projects where you know exactly what you want
- Projects with a flexible timeframe, where you can afford to walk away if it doesn’t work out
- Boring, repetitive, or otherwise uncreative work
- Projects where you don’t need ongoing support
- Projects with a limited budget
- Companies that have lots of in-house project management resources to keep everything on track.
**Note: I’ve lumped local contractors and overseas ones together. The pros and cons apply to both, the one important distinction being that local contractors typically require a bit less hand-holding and will have a higher probability of finishing the job.
Agencies

Pros
- An agency’s reputation is well known. You can find out who the good ones are.
- Agencies have access to the best talent. It’s hard for anyone to find the best of the best, nevermind convince them to work for you. Agencies use their reputation to assemble a killer team, and provide a variety of creative outlets to keep them happy.
- Agencies have dedicated project managers. That means you have a friendly voice to talk to on the phone. Software developers, as a group, are not the greatest communicators in the world; often viewing talking to clients as a distraction from their real work. In large projects, with multiple teams collaborating, this can be a big problem. Good project management is often the difference between a large project finishing or falling apart mid-development.
- Agencies have the most to lose, in terms of reputation. That means they are less likely to let a project go sideways or deliver a sub-par product.
- They’re cool. They have offices that would be at home in Wallpaper magazine and blogs that people actually read. They have interesting hobbies and go to hip parties.
Cons
- Agencies have the highest hourly rates…by far
- Agencies will work much harder to manage you, the client. A successful agency knows how to hit budgets and deadlines. There will be formal signoff forms, hard deadlines for making project changes, and lengthy documents. If you’re against this kind of red tape and handling, be warned.
- Agencies are often more concerned about portfolio building than your bottom-line. Expect to be sold on the newest, sexiest, most creative solutions – even if they aren’t the most practical for your needs.
- You never want to be a big agency’s smallest client. You likely won’t get the level of expertise you are paying for. The guys who won the awards on the wall got them by working with the most important clients.
- Most agencies are focused heavily on design. If your project is tech-heavy, be sure you have an agency that can handle it (or get them to partner with us).
Perfect For
- A project that needs help being defined and scoped
- A project with lots of stakeholders who need to be kept happy, and in sync. Good agencies are good communicators.
- A project with inflexible deadlines or a tight schedule
- A project that needs to be really really awesome
In-House Team

Pros
- If your needs are big enough, and can keep a team busy year-round, it is the cheapest option
- You have complete control over how well the team performs
- The team is more in-tune with your internal business concerns and your product
- It is very stable. You really have to mess up to get your entire team to quit at once.
Cons
- Hiring is always hard. Hiring programmers (especially when you are not a complete techie) is even harder. The difference between what an average programmer gets done in a day and what an experienced, passionate, programmer completes can be 5X+, so hiring well is very important.
- Big problems need a team of specialists. For a non-technical person it is easy to assume that all computer problems require the same skillset, just in the same way that I assume all medical problems do. It turns out my vet isn’t quite the laser eye surgeon I thought he was, and your in-house IT guy probably isn’t also a brilliant designer, software developer, and copywriter either.
Perfect For
- Companies where technology is at the core of your business, and your main differentiator in the market.
- Projects that will need to be managed and expanded by an internal team over a long time horizon
- Internal tools that don’t need to be sexy or innovative
There is no one-sized-fits-all solution for technology problems. That’s why Thirdi works with companies in all three of these situations. We can help you hire an in-house team of technical wizards if that is what you need, and offer bursts of programming support for big projects. We offer monthly retainers packages that take out some of the hassles of managing contractors. And we are always happy to lend some technical muscle to your design agency of choice on a big project.
Of course, sometimes Thirdi just isn’t the right fit. We’re built for big, hairy, ambitious, projects. That’s maybe 5% of the jobs out there. We’re not afraid to tell clients that they’d be better served with an all-in-one agency or a contract designer if that’s what solves their problem best.
Choosing your technology provider is an important part of running a modern business, and we take it seriously. Get in touch if you want to talk about your options with us.