With over 30 years in the software industry, I can relate to the obstacles companies face while outsourcing.
From time and costs to the shortage of developers, it’s no surprise that it can be a difficult process without the proper tools. Trust me, I’ve been there.
What if I said software outsourcing doesn’t have to be difficult?
Let me backtrack a bit.
Last summer, I spoke at DeveloperWeek NY on the “7 Keys of Successful Software Outsourcing,” which we here at Accelerance like to call “Outsourcing 2.0”. These pillars of successful software outsourcing are proven because we've seen them work time and time again for over a decade.
Learn more about the seven keys in Outsource or Else, a business fable. The book focuses on a fictional vice president, Jason Jaye, who had been forced to outsource. However, with the help of the 7 keys he was able to plan for how to select and work with the right global software outsourcing partner and meet a critical product release deadline.
While Outsource or Else is fictional, I thought you might like to hear a true story. One that actually hits home for us at Accelerance.
Here are the 7 keys to successful software outsourcing as presented at DeveloperWeek NY.
- Key #1 - Great Developers are Everywhere
The first thing you need to get out of your mind is that software outsourcing partners only come from India. That’s an “Outsourcing 1.0” mindset. It’s just not true. These days you can find good developers just about anywhere - onshore, offshore and nearshore.
You also don’t want to think of software outsourcing as hiring individual developers or freelancers. Who's got time to chase down a bunch of individual contractors around the globe? Outsourcing 2.0 is about hiring TEAMS of developers.
Now how do you go about doing that? I’m going to assume here, in most cases, you do what most people do when looking for recommendations -- you ask friends, family, and colleagues. But is that the smartest thing to do in outsourcing? Not at all. Most of your colleagues are going to be familiar with huge outsourcing firms, ones that employ hundreds of developers. But for smaller companies, you might only need maybe five, ten, or twenty developers. With these giant companies, you’ll only be a number to these guys and ultimately they just won’t be invested in your project.
Follow what I call the Steve Mezak 5% Rule: With any software outsourcing firm you employ, the development team should be larger than 5% of the developers they employ. Your partner will be more engaged with your software, and you’ll get better results. Win-win, right?
- Key #2 - Focus on Your Vision
Don’t just run head first into software outsourcing. Have a solid vision for your project. Does it serve a purpose in your business? Does it make sense? Most importantly, is the user experience compelling? Fail to take these into account and you’ll end up with a resource-draining dud. Developing an app just because you can is a horrible strategy. In the same vein, not having a clear vision before you write those first lines of code is equally problematic. Don’t wing it: take a pain point and focus on alleviating that pain and delight your end user.
- Key #3 - In Person Investigation is Critical
Would you buy a car sight unseen? No, and you shouldn’t hire an outsourcing team that way either. Outsourcing 1.0 was more focused on cost, and companies were more focused on finding the cheapest team. Outsourcing 2.0 is about finding the best team, and how are you going to be able to judge that based on a long-distance vetting?
Take a business trip to your prospective outsourcing partner, get to know them and how they work. Does their work culture match yours? Do their developers seem genuinely skilled? Face-to-face discussions can bring critical insights to light and the result will be a smoother operating engagement that is both cost and time efficient.
- Key #4 - Quality Matters as Much as Price
This echoes Key #3, but it’s worth it to stress it again on its own. Old school software outsourcing seemed to be about driving costs down as far as possible, quality be damned. Frankly, this is a stupid way to think.
Yes, you might get code on the cheap, but how much time are you going to spend afterwards fixing shoddy code.
That could blow those cost savings out of the water completely. When outsourcing, you’re looking for value and that means putting quality matters as much as price. Does this mean you might choose for a developer that isn’t the cheapest? Sure, but you won’t be spending more money later fixing issues.
- Key #5 - Think Like A Partner and Embrace Cultural Differences
Treat your outsourcing partner like a partner, and not some kind of expendable resource. At the same time, you need to understand that people around the world have different ways of communicating. For example, India’s people have a much more polite way of saying “no”, like telling you “it’s difficult” instead. But an Eastern European developer will tell you a flat out “no” much like a New Yorker.
Either way, you’re going to need to do your homework and be prepared to embrace cultural differences. . When it comes to talking to your outsourcing partners, treat them as people, not robots. By treating them with respect, you invite them to make a more personal connection with your project. They’ll feel more inclined to push out quality work if they feel like a part of the larger end goal.
- Key #6 - Effective Communication Is Key
We’ve said in previous blog posts about how you should be treating your contracts as covenants instead. Don’t fall for the cheap outsourcing trap. Expect the same level of quality out of these outsourced developers that you would from your in-house employees. That’s really the core of Outsourcing 2.0: thinking of outsourcing as an extension of your team, and not just more bodies in front of a computer coding away.
- Key #7 - You Get 3x ROI on Hiring a Good Outsourcing Partner
Take your outsourcing hiring process seriously. Our experience shows that you’ll get roughly three times the time and effort you spent in looking for a good outsourcing partner. Now, this is not to say you might not luck out and find the perfect match right away. But that’s the exception, not the rule. In Outsource or Else, Jason (the protagonist) flies around the world carefully interviewing and researching various software teams. Had he listened to his board of directors and gone with the cheap developers, he’d likely have wasted tons of time fixing their sloppy code and dealing with their poor working habits.
Outsourcing 2.0 is about quality, and you should expect it from any outsourcing partner you select.