As a decision maker, It is usually a pain in the ass when deciding if you should hire your own tech guy/developer or just simply outsource your project to professional team. If you happened to be in early stage starting your business, how you deploy your business to the market with your secret sauce in the timely and cost-efficiently manner might be your first concern. How do you leverage and balance it with the limited resources you have? Here are some facts and tips that might help you get it started:
Whether or not to go outsourcing?
Small & medium business decision makers outsource their short-term projects, enterprises outsource technology development in new area of practice for the reason of low-cost, time efficiency, and less hassle while engaging individual project team members. In this case, you would have more time to source your own developer to take over once the product is delivered. But still we’ve all heard stories of not so successful outsourcing projects. Why?
“The lower the cost, the higher the risk.”
That being said, it does not justify higher cost dev team has better delivery result, low-cost does not equal lower quality. The reason I said this is because my team and I have all experienced how some of “Professional Outsourcing Firms” mock up their pricing over the years.
First thing to keep in mind is making sure you know where your money is spent, the critical issue is the “Transparency” of each quotation. For example, the cost of a qualified developer with the skills needed from India could be way lower than an US-based talent. But in order for the project to run its course, the cost of project management and communication should go higher than domestic projects. Leverage your choices, the goal is to get the work done.
Second – “Contract”, make sure to define the milestones and budget up front, and the whole team understands the scope.
Third – “Check Points”, spend some time to go through each milestones upon completion, you would be surprised how constant communication could shorten the gap between your expectation and actual development. You don’t want to get in too late when the things go south.
We have seen so many failed outsourcing projects over the years, keep these in mind to prevent the ugly breakups or bringing more firefighters to save your project.
Outsourcing vs Internal Hiring
For sure there is some quality issues toward outsourcing, but the very same concerns exist in internal hiring as well. One of the core advantage of outsourcing is the “Flexibility” which means you could get the support you need fast and able to cut the cost when you don’t need it. You might take the route of hiring several senior developers your own to start with, but the problem will surface once the product is developed. Do you really need all these developers to maintain the product? Where do you put them after? The “Rotation” has significant effect to increase productivity and creativity, the best way to rotate a developer is to assign a new project every once in a while. The study shows two years is the maximum time spent on a single project before ones get burnout.
Some might argue there are tons of benefit hiring internally including data security and affordability to squeeze the talent dry. But most of decision makers don’t realize it also comes with higher HR management cost and risk, such as management, insurance, and emotion cost. Technology is relatively easier to manage compared to human capital.
How do you leverage the Pros & Cons?
Before answering this question, you need to determine if you have the core element within your core team: Architect/Organizer – Do you have someone capable of sorting out the the messy lego bricks, dividing them into sprint group and handing them out to different personnel to work on putting the pieces together? Finally you would need to combine all the sprint together. It is critical to have a preset structure, you don’t want to end up having a Megazord with colors that don’t match or gigantic limbs with small head and body. This architect role could be your CTO or yourself as CEO, sometimes a skilled UI designer could take on the job too. If you don’t have a fitting role yet, you need to start hiring your own UI designer and back-end developer. They need to have the best understanding of the user experience and roadmap of the product. Training them to become the architect which you would benefit the most from it.
At last, 1. Make sure you have access to technical document and code at all time and build in the function of easy data/metrics retrieving in case you are screwed by your developer.
2. Respect each specialties while lowering your risk.
3. Create win-win goal based on mutual trust.
4. Cut your losses when unfit as soon as possible, no strings attached.