Offshoring Software Development - Beyond India

-->

“India reaped new fortunes in its recent rise as an outsourcing powerhouse. But now India hears footsteps: China, the Philippines, Hungary, the Czech Republic and several Latin American countries are luring offshore outsourcing jobs as well. The surprise: Some of India’s offshoring giants are offshoring themselves, fueling the next round, and U.S. firms are joining in.”

According to Kerry A. Dolan in a recent Forbes article.

“The global expansion is here to stay. Spending on offshore information technology services will nearly triple in six years to approach $60 billion by 2010, says research firm Gartner. Engineering design “will be the next big wave of global sourcing options” in manufacturing, the firm says, predicting that spending on outsourced R&D and engineering will grow tenfold in the same period.

More broadly, offshore employment in IT, banking and six other areas will have doubled between 2003 and 2008 to 1.2 million jobs, says McKinsey Global Institute.”

Full article available here.  Free registration required.


Four Tips When Considering Offshore Software Development

When determining if outsourcing software development to offshore partner, I suggest careful analysis of the following:

1) Is Lower Labor Cost Really Lower?
There is no doubt about obtaining lower hourly rates from an offshore provider.  However, you must analyze the required skill set.  For example, a talented programmer might require 1 day to complete a particular task while another programmer requires 2 weeks. 

Make sure to thoroughly research a coder’s reputation, online marketplace rating, previous work experience, communication when possible.  If it not is not possible to determine a majority of this providers attributes, move on and do not outsource with this provider.

Require bids to include timelines with milestones. 

Keep in mind, it is possible your research will determine only some or none of your project will have a lower labor cost on the worldwide market.

2) Importance of Reliable and Effective Communication
Software development projects are difficult enough even with everyone speaking the same language.  Do not underestimate the importance of language skills.  In addition, good communication means nothing if dialog is untimely.  It is frustrating having to wait for someone or something. 

You need to ensure your project contacts will respond in a timely and effective manner.   The best way to determine the communication level is to email, instant message, talk, etc. as much as possible before entering into a software development agreement.

3) Crystal Clear Project Requirements, Design Specifications, Deliverables, Timelines
There is no doubt that poorly defined project plans are a top reason for failed offshore software development plans.  Do not enter a project with project deliverables and requirements nearly complete with the idea that other project details will be determined later; during development.  Break projects up into parts if possible. 

4) Protection
I have completed many projects with people I’ve only met online.  However, that doesn’t mean every project has been entirely smooth.  Developing a network of reliable providers takes time, effort and patience.  Make sure to have a protect plan that includes all or some of the following: payment escrow, arbitration settlement, trade secrets and confidentiality agreements.  Here’s a place for contracts –link.  Also, I recommend using Open Source whenever possible to mitigate risk.

Conclusion:

Let’s be real - most of these tips can be applied to any type of project.  These tips include basic fundamentals of software development management.  They are listed because it is often easy to point towards the positive or negative aspects of offshore software development and ignore one’s own responsibilities.  Hopefully, these tips remind us to examine factors within our control when involved in offshore software development.

 


Software Engineer becomes Extinct circa 2016

According to Fast Company, the occupation known as Software Engineer will disappear in the US around 2016.

http://www.fastcompany.com/magazine/103/open_fast50-jobs.html

Do you think so too?


Costa Rica - Offshore Software Development

Thanks to Dian Schaffhauser for interesting article on Costa Rica…

“The country is on the Central time zone. They have a high quality, well educated labor pool. Staff retention rates are high. People have a great work ethic (to the point of typically working 48 hours a week). It’s a three to five hour flight from Dallas, Chicago or Miami. For November 2006, they’re planning a second fiber optic cable to the US, from Puntarenas to California, to provide redundancy to the two cables connecting Florida with Puerto Limon. They have a vigorous free trade zone “regime.” There are 319 direct flights to and from the US weekly.”

I lived in Costa Rica about 7 years ago.  Ticos are wonderful people and it’s hard to beat the pura vida lifestyle. 

If you have experience or more information on software development in Costa Rica, please let me know.


What is an Outsource Marketplace for Software Development?

Outsource marketplaces are websites to connect to buyers and sellers of software development services. Buyers and sellers of services are located worldwide. Therefore, outsource marketplaces are often linked to the following terms: offshore, nearshore, inshore, ruralshore when describing procurement of software development services.

Buyers and sellers use software development outsource marketplaces similar to using auction sites like eBay. A buyer defines and posts a software development project to an outsource marketplace, whereby providers can bid on delivering the project. Posted projects have a limited amount of time for providers to bid on the project. In addition, often both buyers and providers are rated based on past experience. Posting projects is usually free for buyers. Posting, bidding, rating, connecting buyers and sellers makes outsource marketplaces similar to auction sites like eBay.

Most outsource marketplaces offer some kind of process to protect buyers and sellers from scams. A popular method is built in escrow and arbitration. This protection most often requires that communication between buyer and seller is accomplished through the outsource marketplace private message boards.

The landscape of outsource marketplaces is rapidly changing. Many new sites appear on a daily basis. Presently, a few examples of outsource marketplaces include: RentACoder, oDesk, Scriptlance, Elance.