Home » To outsource or not to outsource

To outsource or not to outsource

To outsource or not to outsource

Where to source project HR from can be critical in cultural, economic and convenience terms. Michelle LaBrosse explains how, when it comes to project management, outsourcing may have its cost advantages, depending on different variables.

As a practice, outsourcing is not new. Companies have used outside talent to create internal capability for as long as people have been working together. The question has always been whether you invest in creating the capability internally or do you hire a firm that has that core capability and can do it faster, better, and cheaper than you can? What is new however, is the distance from which you can get outside talent working on internal projects. Working virtually is now the norm all over the world, so it doesn’t matter if the external talent is around the corner or around the globe. Or does it? How do you decide whether or not to outsource?

To start off, lets clarify a few terms. The term “outsource” is broad. Are you considering offshore outsourcing or domestic outsourcing? In the software industry, domestic outsourcing is sometimes referred to as “insourcing.” But “insourcing” can also mean to create the product with in-house talent (even if that in-house talent most likely works virtually and not all under the same roof). Let us examine the practice of offshore outsourcing. This means paying someone outside of your own country for working on your (software development, perhaps) project.

There are some key attributes to look for when deciding if you should outsource a project or not. Attributes that define
a project well suited for outsourcing include—

Minimum ambiguity: It is easier and smarter to outsource a project if your requirements are well documented and there isn’t a lot of ambiguity in what you want your software developers to do (ie, you know exactly what you want and how to spell it out for developers, step by step).

Frequent and clear communication: To ensure that outsourcing is successful, make sure that the team you are outsourcing to agrees to a communication plan to ensure that they are on the track that you want them to be on, and than you can correct problems and misunderstanding early on. By doing this, you will ensure that your outsourced software is actually an economically sound option, rather than having the cost of the project increase due to miscommunication.

Competent providers: If the company doesn’t have a record of being a successful producer in the product that you are asking them to make, do you own due diligence to ensure that they are capable of creating what you have asked for? If a project does happen to fail miserably due to the incompetence of an outsourcing supplier, don’t take that as a sign to never outsource again—it just means that you have to figure out what went wrong, what types of projects work better for outsourcing, and make sure you don’t repeat the mistake (ie, how about you choose a different company next time!).

To help you decide which option is right for your project, it is important to look at the positive and negative sides of each option.

Pros of Outsourcing

It is cheaper! Companies who specialise in developing a certain type of software product that you need, have the advantage of economies of scale to reduce their costs and pass these saving on to you.

Around the clock work: If you split up your software project with various workers in different time zones, you have the advantage of someone working on your project at virtually all hours of the day, meaning that, if done right, you get 24/7 technical advancement on your projects; getting it done faster.

Cons of Outsourcing

Distance, time zones, and language or cultural barriers: While an outsourcing option may look cheaper on paper, if you can’t come to an understanding with your outsourced team due to proximity, time, or cultural and language issues, then this “cheap” option can quickly become expensive. Before signing a contract, consider a face-to-face meeting for discussions on the project to get a better sense of how the company works. This will allow you to better understand how to communicate the project needs.

Babysitting: The team members that are working on your outsourced project are not your employees and have no loyalties to you. This can lead to delayed product delivery time and decreased quality. The time you spend “babysitting” your project’s process can cost more than what outsourcing saved you in labour costs.

Pros of Inhouse or Insourcing

Face to Face: With the advent of GoToMeeting and WebEx, an actual in-person meeting has become a novelty. Communication is much more effective when it is done in person. Keep in mind that since communication is 90 per cent of what a project manager does, clear communication becomes very important when managing a software project.

Working with unclear requirements: If you don’t have your project specifications completely nailed down, you need people to be real pros and tell you what it is you actually want instead of what you thought you wanted; or to take an incomplete idea and figure out how to translate your vision into technical reality. This is difficult if you have outsourced the project to a company on the other side of the world. In this case, it is better to either do the project in-house or insource it to a nearby company (in the same country maybe!).

Cons of Inhouse or insourcing

Final cost: The cost of a software development project can be two to three times what you would pay an outsourcing team, especially if the type of project is not in your company’s wheelhouse. However, if you do a good job of learning the ropes, you can reuse what you have learned, and if you keep that talent around, future projects may not be as expensive.

Finding competent talent: More seasoned programmers with greater credentials command top dollar. Make sure the talent you are hiring actually has the experience required to do the programming you need and is not learning on your nickel. You need qualified people on your internal team screening the talent to insure that you are getting the programmers who are worth the price you pay them for their labour. In today’s economy, you can find highly qualified people with great experience willing to work at fantastic rates in every part of the country. The key is having the internal capability to source and manage that talent.

Remember that the key to outsourcing, like any good business strategy, is to use it where it works and to NOT use it where it doesn’t. If you do choose to outsource, have a good risk management plan and do a good job with…you guessed it…project management!

Whether you’re outsourcing or insourcing, you’ll need to be exceptional at managing virtual project teams. Even if you’re managing an in-house team of programmers, most will be working virtually. It’s a rare environment today where all the programmers are sitting in one room. Virtual project management requires its own unique set of skills. Some tips to succeed in your virtual project team include—

• Ensure your availability (or unavailability) is made clear to all team members.
• If possible, organise a collocated meeting so that team members can meet each other. A friendly team is a cohesive team.
• Don’t shy away from the phone! In a virtual environment you already have communication limitations. Don’t increase these limitations by only sticking to emails or texts.
• Be extra careful that project tasks and responsibilities are clearly defined so that your project team doesn’t end up doubling their efforts for a single task, or dropping the ball completely.
• Schedule regular catch-up meetings even if you don’t see the immediate need to check in. You might be surprised by the problems and solutions that arise when the team comes together to discuss the project.

The author is the founder of Cheetah Learning, the author of the Cheetah Success Series, and a prolific blogger with a mission to make project management simpler.

Leave a Reply