Feeds

The outsourcing commandments

Development outsourcing: tips, tricks and pitfalls

Secure remote control for conventional and virtual desktops

Comment Sure it’s all the rage, but is the outsourcing of web and software application development all that it’s cracked up to be?

Outsourcing is a subject of wonder, disdain, and even ignorance. I have a fairly unique position in that I have been a promoter of technology/development outsourcing for more than eight years. Back during the rising internet bubble, I felt it was highway robbery that a developer or designer could charge $100, $200, or even $500 an hour for something that used to be done for an average wage. At the time I was living in the Czech Republic, and you could have had a Cisco CCNA engineer for a laughable rate.

While enterprise-sized companies were not eager to jump on the bandwagon on a one-on-one basis, they did start turning to companies for unique projects, and eventually whole development streams. A company, even one on the other side of the world, has SLAs to be accounted for, people to phone and fax, and crucially, can be sued.

Outsourcing, though, is not the panacea for cutting costs that people would have you believe. Thanks to overzealous CTOs and CIOs, development teams around the globe are being shuttered at a rapid rate. Entire divisions of development and support staff are being handed their pink slips AND being told to train their replacements. Are people paying too much attention to the bottom line?

Back during the bubble, consultants and salesmen used to use the old FUD technique to sell their software and kit. And it worked, just look at Sun and Cisco, and to a certain degree the vast amount of unused or dark fiber in the US.

Now is no different. Outsourcing has a very clear business proposition: dramatically lower your production costs and ramp up whole teams (and vice versa) at the drop of a hat. For the amount of money you pay, hell, do three projects/versions in one fell swoop.

It almost sounds too good to be true. Which, of course, means it is.

Yes, it is very nice that you are now paying $14 an hour for a Java developer. But what other costs are you incurring that you may not be able to quantify?

Here are my tips and tricks for ensuring your offshore project goes smoothly.

  1. Outsourcing doesn’t mean your projects magically get delivered on time. Any pitfalls that come with your particular territory will only increase with outsourcing. An example of this is cutting-edge Java development. Remember all that testing time you needed last time? Well, double it.
  2. Always, always, always factor in the time zone of your offshore partner. Not only must they communicate with you 20 time zones ahead of them, but also any third-party hardware or software vendor as well. Before you realise it, minor problems could take days to resolve simply because of the time differences.
  3. K.I.S.S. (keep it simple, stupid) - still the best way. This is by no means an insult to offshore vendors, but people often forget that English is not the world’s first language. Forget the flowery language and hyperbole, just stick to the facts. And do not let anyone from marketing in on the email chain.
  4. Skype Me! Personally, phone lines in India and Russia still have a long way to go. VOIP can really improve meeting interaction simply from the line quality.
  5. Remember, there are very, very clear cultural differences between you and your offshore vendor. And no, it does not make you or anyone racist to bring that sort of thing up. I once managed a project team in Beijing, and I had no idea, for weeks, that things were going terribly. Why? Because the Chinese find it rude to say no and don’t like disappointing you.
  6. Do you have a shit-hot project manager on your side? Do they? If not, forget it. Like in every other facet of business, solid communication is the key to success. Project transparency is key to this. You must have a partner that is willing to include you, warts and all, in all the project’s gory details. If you don’t want to be involved, then you should just quit now. Remember, to err is human, but to be ignorant is fatal.
  7. The quality of developers is improving all the time. But remember the old Dennis Miller quote: “All-you-can-eat shit is still shit.” Do not be afraid to request CVs from the developers who work on your projects. It's your money, after all.
  8. Do NOT be surprised if testing takes longer, and the actual days to deliver a project are more than it would have been had you delivered the project locally. Some people have the mistaken impression that a 100-day project onshore, translates into a 100-day project offshore. Your local teams understand you, your business, and your requirements. A team half the world away will take longer to get the same level of cohesion (if at all).
  9. Document like you are being the most anally retentive writer you’ve ever known. And once you're done, then document some more. Use screen shots, use cases and succinct and clear steps for everything.
  10. Connect early and often. Why not fly out for the kick-off meeting? Explain your business, your project, the pain points that drives this project. Demand demos, lots of them (or at least screenshots). In short, get involved.

Don’t get me wrong, I'm a personal and professional proponent of outsourcing/offshoring. But running technology projects is hard enough without separating yourself from your team by 1,000s of miles. The pain comes from incorrect or unrealistic expectations from the customers, which can be compounded by an uncommunicative vendor.

At the end of the day, offshoring works and works well when both parties strive to work like they are part of the same team.®

Geoffrey McCaleb writes content management systems for a living. His blog lives here.

Top 5 reasons to deploy VMware with Tegile

More from The Register

next story
PEAK APPLE: iOS 8 is least popular Cupertino mobile OS in all of HUMAN HISTORY
'Nerd release' finally staggers past 50 per cent adoption
Microsoft to bake Skype into IE, without plugins
Redmond thinks the Object Real-Time Communications API for WebRTC is ready to roll
Microsoft promises Windows 10 will mean two-factor auth for all
Sneak peek at security features Redmond's baking into new OS
Mozilla: Spidermonkey ATE Apple's JavaScriptCore, THRASHED Google V8
Moz man claims the win on rivals' own benchmarks
Yes, Virginia, there IS a W3C HTML5 standard – as of now, that is
You asked for it! You begged for it! Then you gave up! And now it's HERE!
FTDI yanks chip-bricking driver from Windows Update, vows to fight on
Next driver to battle fake chips with 'non-invasive' methods
DEATH by PowerPoint: Microsoft warns of 0-day attack hidden in slides
Might put out patch in update, might chuck it out sooner
Ubuntu 14.10 tries pulling a Steve Ballmer on cloudy offerings
Oi, Windows, centOS and openSUSE – behave, we're all friends here
prev story

Whitepapers

Why cloud backup?
Combining the latest advancements in disk-based backup with secure, integrated, cloud technologies offer organizations fast and assured recovery of their critical enterprise data.
Getting started with customer-focused identity management
Learn why identity is a fundamental requirement to digital growth, and how without it there is no way to identify and engage customers in a meaningful way.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
New hybrid storage solutions
Tackling data challenges through emerging hybrid storage solutions that enable optimum database performance whilst managing costs and increasingly large data stores.
Mitigating web security risk with SSL certificates
Web-based systems are essential tools for running business processes and delivering services to customers.