outsourcing software development

of 54 /54
Outsourcing Software Development James Gibbons

Author: jamesgibbons

Post on 16-Nov-2014




0 download

Embed Size (px)




  • 1. Outsourcing Software Development James Gibbons

2. Outsourcing Why or why not outsource? Choosing a partner Making it work 3. Introduction Currently a Software Developer Previously a Software Development Manager Outsourcing in the UK and abroad No magic bulletsHave worked with people in the UK (contractors and companies),Poland and Belarus as a collaboratorIve worked in an environment where outsourcing worked, andwas immensely useful but it wasnt without a cost.I have something that may look like a magic bullet, but it isnt,its actually really hard. 4. Why Outsource?You probably do. Many of the services used by yourbusiness are not in house. Payroll, office cleaning,legal, etc.Need a solid business reason. Interesting challenge isnot a good reason. 5. Flexibility - much easier to expand or contract a team,add new skills.Want to permanently recruit an iPhone developer? AHadoop expert? Be prepared to join a very long queue.Outsourcing makes that somebody elses problem. 6. Need a DBA, who is also a SEO master? Its like tryingto nd a unicorn.Luckily, we have two! 7. Cezary P 1999Sometimes you just have a dirty job. It needs to bedone and you want to keep your team moving.Frees up your local team for more valuable andinteresting work. 8. All just a matter of money. Lower costs, more bang foryour buck.This isnt a great reason. It isnt vastly cheaper unless yougo very far away. The cost of working this way will almostcertainly mean your savings are a lot less than you expectand may be more expensive than your local team. 9. Why not? 10. Collocation is great. Bring everybody in to one office.Life is so much easier.Try to make the office nicer than this though. 11. Time goes much more slowly. There are no more tenminute changes.The feedback cycle is much more 12. Heavyweight process requirements 13. Luis Miguel Bugallo Snchez 2005Are they committed. Chickens versus Pigs.C2, waiting for payment milestones. 14. Your R&D may not involve microscopes. Who is doingthe R&D 15. Hard to convey context, priorities & values 16. What if you want to go back and bring everything inhouse? Or worse, switch to another provider? 17. Outsourcing Options 18. UK. No travel problems, no culture problems, nolanguage problems, its great!Very expensive! Java or C# contractors in London >500 per day. Outside rms can be >1000 19. Eastern Europe. Options everywhere. Some parts e.g. Poland are very accessible. Flightsto all parts of the country from LTN and STN everyday. Russia and Ukraine [Kharkiv] areless accessible. Belarus can be a nightmare as it enjoys very poor relations with the UK[Godel].Can still be expensive especially in western locations - sometimes more expensive thanan in house London developer. 20. Far East - mainly India, China is increasinglyimportant. Also a few other countries like thePhilippines and Vietnam.Also other locations - South America, especiallyArgentina 21. Choosing a Partner 22. Timing Dont wait until youre under pressure. Allow lots of slack. Your outsourced team will be netcontributors slower than you expect. 23. Contractors As with your normalhiring procedure Expect them to beamazing! Feel free to take risks andsay goodbye if they dontmeasure up. 24. Companies Find an organisation with a similar culture. Talk to the developers. Try to have some leverage.An organisation like Infosys or Wipro with >100,000 -150,000 people wont have much in common with yourtwo man startup -> youll be paying for things you dont want or need. If youre a bank, then they will beable to give you the certications you may require.Business development will make it sound wonderful - its their job. Talk to the developers, theyll be thepeople you speak to day to day and theyll be the ones that are doing the work. Also, they are usually muchworse at lying to you.Leverage comes in many ways. You may not be the biggest client, but you may be their chance to break intothe node.js market. 25. Factors to Consider Technical ability Time difference Language skills Travel difculties What is their hiringprocess?Time: Poland +1, Ukraine +2, India +5.5, China +8.Remember differences in working times.Travel time: Eastern Europe a couple of hours; Ukraine 8hours; India >12 hours; China even longer 26. What work should you outsource? 27. Core IP?Intellectual Property. A risk? 28. Too SmallToo BigLike Goldilocks, not too small and not too big. Dontthink of it as an outsourcing problem, if you had 10new developers how would you bring them on board?Mission critical project? Disaster. 29. Break off a distinct piece of work. Ideally a wholeproject. Remember, your new dev team will have tomaster an entire new set of tools and way of working;as well as a new domain. Keeping things tightminimises what they have to learn up front. 30. Productivity: out-sourced team will be very lowinitially, and wont rise as rapidly as you expect.Starting thinking on an 18 month - 3 year horizon, nota 3 month horizon. 31. Water carrying 32. Customer facing projects? 33. Making it Work 34. Time Frame2012 First month2013 First year2014 First three years The future2015 35. CommunicationIts all about the communication. If youre doing outsourcing and you take away one thing, its communicate.It will get you around so many bumps and problems if youve built up trust and can share knowledge.Ability to have condence in the other partner. Its a two way thing!Important to trust your outsourcing partnerNeed to trust and be trustedMust ensure your interests are aligned - xed cost vs time & materials? Allows a platform for giving feedbackand improvement. 36. Face to face conversation is best of all. No latency, incredible bandwidth, immediate feedback. Remember the importance ofnon verbal communication!Much easier to convey ideas. Just need to grab a whiteboard or sheet of paper.Easier to spend an extended period of time with people than on an interminable conference call. [3.5 hour conference call]Orders of magnitude better at building the softer side of relationships. If you want to build trust without regular visits,expect it to take years. Ideally have visits going both ways - reciprocation is valuable.Observe what its like at the coal face. [VPN example]. 37. Needs to have an excellent connection, excellent bandwidth, latency