fearless it outsourcing

61
by Author Name outsourcing application development anywhere on planet earth by Steve Mezak

Upload: andy-hilliard

Post on 20-May-2015

430 views

Category:

Documents


12 download

DESCRIPTION

This "IT Outsourcing 101" eBook is a concise summary from the bestselling book on the subject, "Software without Borders" and provides you the essential steps required in initiating and organizing the process to find and evaluate offshore software development options

TRANSCRIPT

Page 1: Fearless IT Outsourcing

by Author Name

outsourcing application development anywhere on planet earth

by Steve Mezak

Page 2: Fearless IT Outsourcing

Does outsourcing your software development make sense?

Is it the right fit?If so, how should go about doing it? What are the first steps?

The valuable information in this new e-book from Accelerance CEO, Steve Mezak, puts you on the right path.

Page 3: Fearless IT Outsourcing

Fearless Software Outsourcing by Steve Mezak is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

Based on a work at www.accelerance.com.

Permissions beyond the scope of this license may be available at http://www.accelerance.com/Fearless-Software-Outsourcing-Ebook/.

Published by Accelerance, Inc.

January 27, 2011

e-book design [email protected]

Page 4: Fearless IT Outsourcing

Who should read this Ebook 1

What is Software Outsourcing 3

Chapter 1: Why Outsource 9

Chapter 2: When You Should NOT Outsource 17

Chapter 3: How to Select a Software Outsourcing Vendor 33

Chapter 4: Conclusion 56

Page 5: Fearless IT Outsourcing

Fearless Software Outsourcing by Steve Mezak

Who Should read this Ebook

So if you happen to be a CIO or Director of Application Development in an IT department, you should read this Ebook. If you are a CTO or VP of Engineering in a software company, there is something for you in this report. No matter what your role or function within your company, if you are developing custom Software for the web, mobile devices or internal use, this Ebook will be of tremendous value.

So, who is this Ebook, Fearless Software Outsourcing: Application Development Anywhere on Planet Earth for exactly? Who can benefit the most? The answer is practically anyone at any company that understands the advantages of outsourcing or is planning for an outsourced software project. The reality is that very

few professionals know every-thing there is to know about the topic. There is always more to learn and new developments in the offshore software outsourc-ing industry. As more and more developing countries embrace technology and education, (much like India and Costa Rica have in

the past few decades), the further along we’ll be as a global economy in producing goods and services more efficiently.

If you happen to be a CIO or Director of Application Development in an IT department, you should read thisEbook.

Page 6: Fearless IT Outsourcing

Chatper

Fearless Software Outsourcing by Steve Mezak

Software development gets done in Russia, India, Ukraine, Argentina and even Costa Rica?

One of the most important trends in business today is the practice of outsourcing those functions or projects that can be done more efficiently and more affordably overseas.In our truly international business environ-ment, we are all interdependent on each other. Having all your business functions performed in the country where your corporate headquarters is located can be very shortsighted. With outsourcing, your company can significantly reduce costs and enter new foreign mar-kets, all at the same time. And where’s the downside there?

In fact, it’s very normal to have a company from Europe serving clients in the U.S. and utilizing partnerships with manufacturers in Asia. Also very likely is a multi-national company in the U.S. that performs marketing, selling and distribution in America but outsources all the rest to places all over the globe. Most of us know that Nike manufacturers shoes in China. Some of us have heard that Volkswagen assembles cars in Mexico. But how many of us realize just how much software develop-ment gets done in Russia, India, Ukraine, Argentina and

even Costa Rica? It’s true. And the application develop-ment outsourcing phenomenon continues to grow with every passing year.

Who Should read this Ebook

Page 7: Fearless IT Outsourcing

Fearless Software Outsourcing by Steve Mezak

Developed according to your exact requirements, your software application could be up and running in record time and way below what you could produce it for in house. Have limited or no internal developmentcapabilities? Can’t handle the project in the required timeframe? Lack the relevant technological expertise required for the project? Outsourcing can address these issues and give you a serious competitive edge .

Whether it’s a simple iPhone application your company needs, an enterprise wide IT initiative that has limited budget or a massive cloud-based, software-as-a-service product that you need to bring to market in the next 18 months, the benefits of outsourcing overseas are signifi-cant. IT projects and software development outsourcing enables companies everywhere the opportunity to cre-ate highly competitive solutions in shortened time tables with considerable cost reduction.

Software outsourcing is the strategic use of external resources to perform application development services that your company either doesn’t want to do or cannot do.

What is Software Outsourcing

Page 8: Fearless IT Outsourcing

Fearless Software Outsourcing by Steve Mezak

But, an established and reputable overseas, outsourced provider can reduce these risks dramatically by address-ing potential problem issues at an early stage. The re-sult? Your project is completed on time and on budget. And you have an unprecedented opportunity to grow sales and market share and beat your competitor at their own game. Not a bad deal.

You’ll learn the best five situations for outsourcing, the times when you should definitely not outsource, details about how to select a software outsourcing vendor andmuch more. If you have ever tried to educate your self on the topic by doing a Google search, you would have discovered that it’s very hard to find good, comprehen-sive, non-biased information out there. In this special, one of a kind Ebook, we attempted to put together the best, most accurate and timely advice on the topic and to communicate it effectively so you can get through the entire Ebook in less than an hour. I think we accomplished that.

What is Software Outsourcing

Of course, developing software requires expert knowl-edge and a strong commitment to project completion in order to be called “successful”. The more reliable overseas companies have teams of professionals trained to work as a team on software development projects, sometimes around the clock. And lets face it - develop-ing software can be well out of your company’s core competence. The outsourcing process allows you to transfer this demanding business activity to an offshore provider, which helps you to remain focused on your core business. And that’s important.

Research shows that one third of all software develop-ment projects started are never completed, and over half of projects will exceed their budgets by over 75%. So, no project, whether performed in house or not, is without risk.

One third of all software development projects started are never completed

Page 9: Fearless IT Outsourcing

Chapter 3When you should not outsource

Chapter 1Why Outsource?

Page 10: Fearless IT Outsourcing

Fearless Software Outsourcing by Steve Mezak

Why Outsource?

Of course, many business owners are less than enthusi-astic about outsourcing certain aspects of their IT oper-ations, especially their software development function. Nightmare stories about failed outsourcing software development projects can be found everywhere. The truth is that many of those failures were caused by not appreciating the differences in time zones, work ethic, culture, and language. If you do your due diligence and take these important elements into consideration, you’ll have a much different outcome. Lining up your project with the right combination of these attributes can make all the difference in the world.

It’s important to understand that outsourcing your soft-ware development to a good vendor is not only much less risky but it can be quite advantageous. As a matter of fact, there are a several scenarios where outsourcing may be the best approach for your business.

Why should your company outsource your software development? Well, we alluded to some very important reasons in the introduction of this report. But, in the pages that follow, we’ll take a deeper dive into the spe-cifics so you can gain a solid understanding. Once you are finished reading, you’ll be 1000% more confident as you move forward with making a software outsourcing decision. And informed decision making is the best kind of decision making. Plus, when it comes to something as important as software products and services for your

company, it is absolutely critical to get it right the first time. Anything less than that could actually cause you to spend more time and money than if you had assem-bled a team and developed the software in house. Not good!

Why should your company out-source your software development?

Page 11: Fearless IT Outsourcing

When You ShouldWhy Outsource?

Fearless Software Outsourcing by Steve Mezak

In addition, you can control project costs. Because it’s agreed upon up front, it’s less likely that there will be surprises regarding the project budget. The product specifications, conditions, and deliverables will always be specified in the project contract.

Limited BudgetOne of the most common is when you have a limited budget. If you’re struggling with that is-sue or if you want to save more money, it’s worthwhile to con-sider outsourcing your software development. For one, you’ll be converting a permanent fixed

cost (monthly salaries) into a variable cost (project fees or retainer fees). Usually, the cost of outsourcing soft-ware development is less than the cost of maintaining an internal development team. Why? There’s no training or infrastructure for one. The outsourced partner needs to have the necessary hardware, software, and training for their team. The best outsourced software providers in the world have made large investments in their com-panies and many times, have benefitted from govern-ment support. You get to leverage these investments at zero cost.

Page 12: Fearless IT Outsourcing

When You ShouldWhy Outsource?

Fearless Software Outsourcing by Steve Mezak

Technical Skills Needed

Another issue is one that many businesses face, espe-cially new or smaller firms: Your company may not have the technical skills. If your recruitment process is stalled for lack of quality candidates or, if your project requires specialized skills, which you don’t have in-house, then it’s time to seriously consider outsourcing. Keep in mind; however, that using an outsourced software develop-ment company doesn’t mean that their resources will automatically be better than yours would be. That’s the goal of course, but it takes homework to figure it out.

Of course, you need to be diligent when it comes to selecting your provider. You’ll definitely want to check client references and analyze their previous projects to determine their skill and expertise level. And if you’re getting dedicated resources, don’t forget to ask for specific resumes as well as a skill’s report for each candidate.

Page 13: Fearless IT Outsourcing

When You ShouldWhy Outsource?

Fearless Software Outsourcing by Steve Mezak

Can’t Find Enough Good Programmers

Other companies have another issue altogether when it comes to deciding to outsource software development: they are too busy and are already running at full-capaci-ty. Oftentimes, there are situations where it makes sense to outsource while still maintaining your own software development capability. If your in-house team is over-loaded with projects and busy with a backlog of devel-opment requests, you should consider outsourcing your less critical jobs. This will allow your internal developers to stay focused on the jobs at hand that will most likely have the biggest impact on your bottom line. You could have the outsourced team handle the less important, day to day projects and keep the high profile ones in house. Or vice versa, whatever works for you. An out-source provider can typically handle less complex proj-ects in a shorter timeframe as they generally will have more hands on deck.

Page 14: Fearless IT Outsourcing

When You ShouldWhy Outsource?

Fearless Software Outsourcing by Steve Mezak

• Improve the efficiency of your in-house staff. Scheduling of your resources is more efficient since in-house personnel can be assigned to current, critical, or ongoing projects. Finding time for a new project can be difficult when current in-house resources are being utilized to their maximum capabilities.

• Having a team dedicated to the project eliminates the need to pull staff when more urgent or daily issues arise. When the project is outsourced to an experienced and professional software developer, in-house work can be better managed. In addition, the completion date of your project will not be affected by things out of your control. The other related issue is internal staff turnover. An in house project that lasts a year or longer could be jeopardized by key technical personnel leaving the company, which puts the project at serious risk.

What are Some Other Benefits of Software Outsourcing?

• Access to an experienced team. A software development company has already put together the team you need. You wont have to recruit new talent, train them and bring them up to speed on your project, therefore the lead-time is reduced. Plus, your ability to claim success in the project is increased when you can rely on an experienced team of profes-sionals who use the technology you require as part of their everyday business.

• Reduce human resources costs. Hiring new staff for a short-term project can be very expensive, particularly if it’s a one time or short-term project. When outsourcing, employee costs are limited to the project duration.

Page 15: Fearless IT Outsourcing

When You ShouldWhy Outsource?

Fearless Software Outsourcing by Steve Mezak

There are also the saved costs for training and overhead expense. If you do the project in house, you’ll have costs for software, hardware, training manuals, training staff and more. Plus, you’ll have efficiency losses for the time required for in-house staff to recruit/acquire staff, ramp up and prepare for the project that’s being considered. These issues are all factored into the hourly rates of an outsourced software development team, and may be well below your internal costs. It will most likely take less time to complete the project using an outsourced developer as well. As a result you will see the cost ben-efits of the software applications much sooner.

Why should your company outsource your software development?

Page 16: Fearless IT Outsourcing

Chapter 2When You Should Not Outsource

Page 17: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

ammunition. But how do you get started? What are the first steps? And more importantly, how do you find a qualified, high quality foreign vendor when there are so many choices and so many countries that are getting in the software outsourcing industry? Never fear, we will address all of these questions. Keep reading!

Managing the outsourcing risks is fundamental to achieving success with your project. Whether it’s a short term, speedy, one time development project or an ongoing, multi-year engagement, you need to know exactly what you’re getting into. Things aren’t the same outside the U.S. borders. Arming yourself with research and knowledge will go a long way in your outsourcing pursuits.

When You Should Not Outsource

First, lets address the obvious: there are real, potential risks in software outsourcing. This is best addressed right up front. The good news, however, is that usually it’s because of poor preparation or research into the outsourcing process. Most companies do not perform adequate due diligence. This Ebook, of course, cuts down the learning curve significantly.

Now that you know some of the key reasons why you should consider software outsourcing, what are the

inherent risks? What should you know before you get involved? Preparing yourself for what to expect and knowing the lay of the land will give you the best

What should you know before you get involved?

Page 18: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

You many also run into foreign outsourcing firms that are simply unethical. Lets face it; there are bad com-panies everywhere you go, not just in Russia, China or India. You can alleviate some of this by performing your due diligence and working with a consulting company that evaluates or perhaps even pre-qualifies only the best foreign firms. There are several U.S. companies that perform this task. The other thing, of course, is to have a solid agreement in place and use the services of an at-torney with international or foreign experience.

Some of the Software development outsourcing risks include:

Critical Intellectual Property Rights and/orPrivacy Issues

Intellectual property is often the most valuable asset of any product-based organization. If you don’t fully un-derstand IP, and the importance of IP rights, you could be in trouble. After a few weeks or months, the over-seas outsourced firm may begin to understand your company’s technology as well as you do. And they may not feel they have loyalty to your organization, even if you are the ones paying them. Reduce your IP risk by firewalling key product or process areas, extracting and filing IP before outsourcing and establish jointly-devel-oped IP ownership and confidentiality requirements. Be sure your firm and your chosen software outsourcing company are on the same page with this.

Page 19: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

Technical Research & Discovery Needed

Usually software outsourcing has a clear goal of creat-ing a specific software application. Software specifi-cations will vary in detail, but there should be a clear vision of the complete solution, or at least an idea of several milestones along the way when the software ap-plication will have expected value and functionality.

But sometimes companies will have a tough technical challenge or critical question how, or if it is possible, to implement a software solution. You can attempt to outsource the research & discovery process to find an answer but open-ended problems like this can be dif-ficult to solve. An offshore vendor that is used to being handed complete specifications for a software applica-tion will have a tough time dealing with research and situations where the answer is not yet known.

Page 20: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

For example, an Accelerance client several years ago wanted a software application that could capture and save the contents of the screen of a call center employ-ee over time. They were already recording the audio and now they wanted to record the screens and synchronize them with the conversation.

What is the best way to do that? That was the question they wanted answered and even gave some sugges-tions of technology solutions that might work. However, the programmers at the offshore vendor interpreted the assignment as a directive to implement the screen capture with the suggested technology, not as research to discover the best solution.

Don’t try to use an outsourcing vendor for research when they are used to be told what to do. If you need to outsource research then make sure your vendor has the senior level people prepared to solve challenging prob-lems and apply critical thinking. Some will jump at the chance!

Page 21: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

The typical budget for software outsourcing with a team of qualified programmers at an excellent vendor should be a minimum of about $25,000 for a pilot proj-ect and is often several hundred thousand, and even over one million dollars per year for larger dedicated teams.

You Have Only an Idea and a Small Budget

If this scenario sounds like your situation, you probably should not try to hire an outsourced software develop-ment team. After all, you can find great individual pro-grammers and software developers on sites like Elance, oDesk or Rent a Coder. Providers on these sites special-ize in helping small or brand new companies who sim-ply have an idea and very little cash. Sometimes, you can even barter your services with someone like this. Simply having a great idea is not enough to consider software outsourcing. And regarding the money part: you can’t expect something for nothing. You definitely get what you pay for if you are paying pennies for the time of a software developer.

Page 22: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

Five Situations for Outsourcing

1. Creating Your First Software Product

If you are starting a software company and have a great idea that could add value to the market or even revolu-tionize your industry, looking overseas for your applica-tion development may be the best thing you ever do. Outsourcing your version 1.0 will provide you with an instant development team and accelerate your time to market, or to the users of an internal application at your company. And it will reduce your costs.

One note of caution: If you’re a startup and plan on outsourcing the creation of your first software product, venture capitalists and angel investors may be skeptical. Outsourcing is not a viable strategy for every startup. But you may be bootstrapping the operation anyway. All the more reason to outsource the software develop-ment to a lower cost overseas firm.

And a technical entrepreneur creating a new online game or app for the iPhone, for example, will be prone to experimenting and testing out different ideas. If this sounds like you, wait until you are finished inventing and innovating in source code, before you step into the outsourcing arena. Outsourcing your version 1.0 will require some amount of specification . But if you haven’t finished innovating how and what the product will do, you won’t be ready. Of course, outsourcing also depends on the nature of your innovation.

A more mainstream enterprise software application that uses standard software technology and delivers a business innovation in the way that the software is used would be an ideal candidate for outsourcing develop-ment. Why? It’s much easier to create a specification to get started.

See the Accelerance webinar An Accidental Programmer’s Journey to Offshore Development about specification techniques that are proven to work when outsourcing.

Page 23: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

It is usually easy to specify an add-on product by mak-ing use of existing product documentation and other “artifacts” from the development process of your main product.

For example, you might use outsourcing to create a ver-sion of your software product to address a new market at a low cost. The starting point can be the source code of your main product. Your existing product is then a major component of the “specification” for the new product. The only thing you need to do is add a short description of the changes required in the new user interface.

2. Creating a New or an Additional Software Application

One thing you can say about IT development teams: give them the space and resources to focus and do good work and truly great things can happen. Well known as an independent culture within the corporate environment, there are certain things every Dev team needs to be successful. They also may be entirely too busy to do all the work that needs to be completed. In fact, that’s almost always the case, especially with a growing company with a hot product that’s on the move.

So, you can use outsourcing to avoid distracting your existing development team from other important work. Perhaps your new product is an add-on or extension to your main product. You can keep your internal develop-ers working on your main product while the outsourced team completes the add-on.

Page 24: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

In addition, you can get round-the-clock development when the outsourced team is offshore and multiple time zones ahead, which will help you get your software developed quickly.

In the past it was common to outsource to a U.S.-based company to acquire special technical expertise, and this is still true today. Face-to-face communication with such a team is very valuable in the early product definition phase. You then have the choice of using your internal team or the outsourced team to do the coding.

Testing and quality assurance (QA) of your software is a terrific way to get started with outsourcing and can provide a critical function that is often understaffed in many software development organizations. Final inte-gration testing that is manually intensive is a good fit for outsourcing.

3. Augmenting Your Existing Software Development Team

Isn’t it true that in the business world, we never have enough people to get the assigned work completed? In practically every organization, especially smaller software companies and companies in emerging tech-nology industries, the laundry list of tasks and planned projects can seem overwhelming. And then there is the issue of prioritization. What’s most important? How do you rate project A from project B, both of which need to happen in order to get the product to market?

The answer to some of these issues is intelligent soft-ware outsourcing of course, you can use an outsourced team to augment the work of your existing develop-ment team. This approach gives you the raw manpower required to develop your software, as well as needed technical expertise your internal team may not possess.

Page 25: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

At one of my software companies, we used an Indian operation to support version 1.0 after a new version 2.0 had been developed and had become the main prod-uct. We still had a few customers who did not want to pay to upgrade, and we were contractually committed to support them with version 1.0. Outsourcing of this non-strategic activity made a lot of sense.

Some people believe that maintenance programming is the only “safe” use of outsourcing. This is not true. There are outsourcing companies that will never aspire to do more than this type of programming. But there are also many outsourced teams of professional programmers that are experts at creating brand new software applica-tions and products.

4. Maintaining an Existing Software Application or Product

Wouldn’t you agree that maintaining and/or support-ing software is a much easier task than product plan-ning and development? It’s absolutely true. And a lot less costly as well. Of course, getting to the place in the product development cycle is easier said than done, but once you have the product in the marketplace, have had some sales success and are in maintenance mode (or even in a version 2 spec phase), you will be in a good place for bringing in outsiders.

Hence, maintenance programming for supporting an existing software application or product is a very popu-lar use of outsourcing. Some outsourcing teams even specialize in this kind of programming. After an initial ramp-up period, it is easy for them to make incremental changes to your existing code.

Page 26: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

You need to outsource the project overseas, because otherwise, you’ll be out of business. Not good!

But using overseas outsourcing to replace employees can be challenging. You need to keep key employees as a core technical team capable of managing the new outsourced programming team, and to do product management if you are a software product company.

Of course, a better approach is to use outsourcing to minimize costs right from the start.

Outsourcing has definitely matured beyond the early adopters and is now being embraced by the early ma-jority of software companies. It has become an integral part of the product development process at American software companies.

5. Cutting the Burn Rate to Enable Your Company to Survive

Here’s the situation: you have a “game changing” soft-ware idea that you think is a total win and so you decide to start a new company. You begin by putting together a great business plan and bringing in some investors. You start hiring a full engineering team to create the software application. Everything looks great, things are on track and plans are coming together. Your software project is moving along well and in your head, you can start to see the customers lining up to buy it.

Not so fast. Days turn into weeks, which turn into months. The software development takes longer than expected. Cost overruns are happening. You had to show a couple “bad apples” to the door. Or perhaps the target market was misjudged and it takes longer to close business. Whatever happens, the use of outsourc-ing in this case can mean the difference between corpo-rate life and death.

Page 27: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

Using outsourcing is like a marriage. It takes commit-ment from both sides to make the relationship work. Good communication is required. Success factors like these are the lifeblood of thriving companies making effective use of outsourcing.

The bottom line? The need to cut the rate at which you’re burning through capital can lead to difficult choices. Whether you have highly paid programmers that need to be let go or simply have way too many unexpected and unforeseen costs that have come up, outsourcing may save the day – and your company.

Page 28: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

Good luck with that one.

Think about it: You wouldn’t hire a new employee without a robust background check would you? You wouldn’t bring on a new Executive without looking at a couple hundred resumes and holding multiple inter-views, right? So, why do companies make a decision and sign an agreement with a foreign software develop-ment firm after they’ve only looked at a dozen or so and barely checked references? Good question. It happens quite a bit.

And ask yourself this: Why would you ever bring on an overseas software development firm just because they had a great looking website, were ranked high in Google for “Chinese software outsourcing” and the sales contact spoke good English?

A Vendor Selection Nightmare

The business community is littered with stories about software outsourcing gone wrong. The reason, unfor-tunately, is usually because the company takes it upon themselves to handle the project – from start to finish. And though some companies do their research, work hard and end up finding a great partner to work with, it’s a typically a rare event. It’s almost always a better idea to work with an overseas software development consulting firm here in the U.S. There is simply too much to know and too much unpredictability. After all, you are dealing with foreigners from another country. Dif-ferent laws, different rules, different cultures. Unfortu-nately, it’s sometimes the American superiority complex that can get in the way. You think, “I can figure this out” or “how hard can it be?” Others might say to themselves, “If anything goes wrong, I’ll take control and tell them what needs to happen.”

Page 29: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

On his own, this VP carried out a careful search for an outsourcing vendor in three places: India, China, and South America. His goal? A low price point to give him a specific cost savings over hiring engineers in the U.S.

He evaluated 22 vendors in these three countries. Then he made nine site visits. Site visits are not always neces-sary, but in his case the company was interested in a build, operate, and transfer (BOT) arrangement giving it the option of transferring the team to its own subsidiary .

So if I hadn’t set up the story as a cautionary tale, you’d probably think that so far, he was doing everything right…right?

Wrong.

Because guess what happened?

So, I’ll share with you a quick story of one software company that, unfortunately, had a “nightmare” of an experience. It wasn’t pretty, but hopefully, it will make you more aware of the potential issues in the outsourc-ing market. The moral of the story? Even when you think you’re doing everything right, things can still go very wrong.

First, you need to know that this company tried to do it all on their own. Call it their independent nature, their desire to save more money or their lack of knowledge. However you see it, it was clearly a mistake, and prob-ably a combination of all three. Second, it took them five months to make the selection. So, they didn’t make the decision in haste. They truly thought that they were rightfully performing their due diligence.

I found out about the happening from their VP of engi-neering, who was the lead on the project. And I’m glad he told me, most companies that experience what they did never tell a soul.

Page 30: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

The nightmare then began. The English skills of the ju-nior programmers were limited, making communication very difficult and inefficient. And their programming skills seemed even worse. Their day-to-day activities had to be closely directed by the U.S.-based VP and his staff. The source code developed in China was reviewed every single day (actually, every night).

Because of the 16-hour time difference with China, managers in the U.S. spent many late nights emailing detailed instructions (even pseudocode) and answer-ing questions by phone when it was daytime in China. This led to severe morale problems within the U.S. staff, made worse by the fact that the U.S. staff never thought outsourcing was a good idea to begin with. Missed deadlines and vociferous employee frustration eventu-ally elevated the issue to the board level.

After all this work, time, and money, he still got less than satisfactory results.

What happened? So, he selected a U.S.-owned out-sourcing vendor with an operation in China. The vendor was in the process of acquiring a second team of pro-grammers in China. The VP found this second Chinese team to be excellent, and they quickly sketched out an architecture and design for the software that was need-ed. He then worked out the financial terms with the U.S.-based vendor and signed the agreement.

But the acquisition of the second Chinese team by the U.S. outsourcing vendor fell through. A junior team from the existing operation in China was assigned to the VP’s project instead. And that’s when all hell broke lose. Do you think he had any control over this development? Absolutely not.

See Chapter 4 of Software without Borders for more information on the pros and cons of BOT

Page 31: Fearless IT Outsourcing

When You ShouldNot OutsourceWhen You Should

Fearless Software Outsourcing by Steve Mezak

Will this outsourcing story be your story? Not necessar-ily. You certainly could spend five months of your own time and come up with a good vendor. But if your soft-ware development project is small or your time line is short, it is hard to justify expending this kind of effort, even if you end up finding the perfect team.

Or you might get a lucky referral from a friend to a good vendor and start outsourcing more quickly. But will it be the best vendor? Is there a better vendor out there that is more experienced, works faster, and costs less? You’ll probably never know.

Is there a way to find a team quickly that will also give you reliable results? Yes, there is. But it is not a simple purchasing process.

But the damage was done. Within two months, the VP was gone. The outsourcing engagement he so carefully arranged went bad and caused such an awful ruckus that he was forced to leave the company. Unbelievable right? In the software outsourcing industry it unfor-tunately happens more than it should. And rightfully because of the issues I pointed out earlier…

The right preparation and research doesn’t • guarantee anythingUnexpected things can and will come up, you • just need to be ready for themIt is a really good idea to get expert software • outsourcing advice…it’s always worth the extra investment

And of course, the last thing I want to do is scare you away from the idea of outsourcing. In many hundreds of cases, every year, it is quite simply the best thing that ever happened to a company.

Page 32: Fearless IT Outsourcing

Chapter 3 How to Select a Software Outsourcing Vendor

Page 33: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

One Accelerance client put it this way: “It’s like we are walking down the shampoo aisle at Wal-Mart and we don’t know what to buy. There are just too many choices!”

The Three-Step ProcessIf you’ve ever looked online for software outsourcing vendors, it’s pretty amazing what you find. There are hundreds, possibly thousands of companies all over the globe just waiting to work with you. Simply Googling the phrase gets you 4.6 million results…wow. Five years ago, it probably would have been less than a million. There has been, without a doubt, an explosion in over-seas software development.

If you are overwhelmed with the sheer number of software outsourc-ing vendors, you are not alone. We all are, even those of us in the indus-try. It is stunning to see how many there are—and they all seem to have

come out of the woodwork in just the last few years.

Page 34: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Of course, you want to take advantage of the real and substantial savings of global software development, but you don’t want to waste time and money learning how to do it. This is really the crux of the issue and a big part of what this special report is all about. The bottom line is that there are far too many companies out there making this mistake. It’s my goal to change this.

So, what’s driving this trend? First: The focus on educa-tion in many foreign countries over the past 30 years, take India and Costa Rica for example. Their govern-ments put millions into higher education and the results have been spectacular. The next reason is the simple need for it. With the rise of the internet, software as a service, social media and all the rest, app development and software development and hardware development and everything tied to it is needed like never before. We gotta have it. And American software developers can’t keep up. But here’s the other thing: they also want too much money. I mean some companies spend three times the amount when they use an internal IT devel-opme nt team instead of outsourcing. If your project costs $3 million to do here and less than $1 million off-shore, (for the same quality work), it’s an easy decision, right?

Page 35: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Fearless Software Outsourcing by Steve Mezak is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.

But how do you do it? There are so many vendors just begging to develop your software. You could hire an outsourcing advisor to help you with the process, but they charge a high hourly rate and are therefore moti-vated to take as long as possible using a “complete and thorough” (and that means expensive!) process to evalu-ate your outsourcing choices.

Most of us cannot afford that luxury, and so you prob-ably feel left on your own to sort through your choices. Well, the reality is that you are not on your own, not at all. Hundreds of companies find themselves in this spot every year. The difference between those that claim suc-cess in the outsourcing game and those that don’t can be summed up in three words: follow a process.

In today’s fast-paced and cost-constrained world of software development, no one can afford a long learn-ing curve and the expense, in both time and money, of making a mistake. After all, if you make the wrong deci-sion, you could lose a lot. Some, like in the story I told earlier…have even lost their job. That’s a tough price to pay.

Your goal: outsourced engineers who work together as a cohesive, professional software development team, following a well-defined software development pro-cess. Not a bunch of programmers thrown together in a room, working on the cheap in some exotic foreign country. Your team needs to be expert in the technol-ogy you need. You want to find a team that can quickly execute your software development projects, not one that will be learning on the job and on your nickel.

Page 36: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Probably the biggest obstacle to selecting a vendor is a lack of clarity about what the process should be. People often combine these three steps, and so they are unconsciously sourcing, screening, and selecting all at once. Let’s look at each step in more detail to see how you can choose your outsourcing vendor quickly and safely.

Well, lucky for you, that’s exactly what I have for you. A stripped down, no fluff, all substance methodology for getting the software outsourcing thing down. Here is a straightforward three-step process you can follow to select the best outsourcing vendor for your software development. The three basic steps you should follow are:

Source: 1. Find vendors you want to consider.

Screen:2. Apply an objective set of criteria to narrow down your choices. Select:3. Look in more detail at your finalists and select the best one.

Pretty straightforward, right? So why don’t others just follow these simple steps and achieve success with outsourcing? Some do. But most get distracted by the details, especially if they are already running a company or software development organization.

Page 37: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

that having a relationship with you can increase their chances and perhaps give you the confidence to pro-ceed. You may even overlook some of their deficiencies if you really hit it off. And how many times in business has this story been told? You were great friends, but terrible business partners. It happens every day. The bottom line is you can’t let personal feelings cloud your judgment. And definitely don’t get sold by a master salesman.

Step 1: Source — Create Your List of Outsourcing Vendors

Sounds easy, right? You do some Internet research, talk to your business friends, maybe go through some of your industry associations, and jot down the names of some firms. You next put together a long list of possible choices and then narrow it down to a short list. While it may sound easy, it never is. But you can make is easier on yourself, that’s for sure.

It’s true, most people find their outsourcing vendor in one of three ways—by personal reference, Internet search, or solicitation by the vendor. In fact, you may already have several vendors on your list but would like a few more choices.

What’s the most common way for outsourcing vendors to find new business? Personal references. Selecting a vendor is an important decision. Smart vendors know

What’s the most common way for out-sourcing vendors to find new business?

Page 38: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

system, a physical location move, or a software devel-opment team, you should never make a major decision about outsourcing with a choice of only one vendor. Never, ever, ever.

Let’s face it: relationships play a big role in hiring deci-sions. And though relationships are important, you can-not rely on them alone. When hiring both employees and your outsourcing team, you need to use a combi-nation of both what and who you know to make good decisions about who to hire to develop your software.

You have to make sure they have a quality team in place, that they have “the chops”. That they can do the job. Talk to some of their clients. Visit their facility. Do whatever it takes when you are sourcing your talent. Because it really is What You Know AND Who You Know in the game of software outsourcing.

And of course, without established relationships, it can take months to find, evaluate, and select the best out-sourced software team to meet your needs.

How do you objectively select the best outsourcing team for you? How can you get beyond the strong influ-ence of relationships, or lack thereof, to select the team that will guide and travel with you on the road to suc-cess?

You certainly don’t want to use a Russian outsourc-ing company simply because one of your angel inves-tors knows the firm and wants to conserve cash as you develop your product. Whether it’s a new accounting

Its really is What You Know AND Who You Know in the game of software outsourcing.

Page 39: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

reputable companies make up those coveted page 1 and page 2 spots of Google. But guess what? It’s hardly ever true.

The reason why some of these outsourcing vendors are at the top of the list is very likely because they have paid thousands of dollars to search-engine optimization experts to use whatever tricks are required to improve their ranking on the popular search engines. And many vendors spend thousands more on search-engine ads to lead you to their web sites.

And meanwhile, the best vendor happens to be on page 6, but you didn’t go that far because only 10% of us ever go past page 3 in a search and no good com-pany would ever be that far down would they? Oh, yes they can. Especially if it’s a foreign company.

Googling for Global Vendors

Most of your potential vendors will likely come from a Google search. We’ll start this topic by bringing up something that some of you may have never heard of. It’s called SEO. Or “Search Engine Optimization”. It is the process of improving the visibility of a website or a web page in search engines via the “natural” or un-paid search re-sults. In general, the more frequently a site appears in the search results list, the more visitors it will receive from the search engine.

Ask yourself this: do you have the perception that the top companies in any field are usually at the top of the search engines when you search for something? (like maybe “software outsourcing companies”) If you do, you are definitely in the majority. Most people DO be-lieve that the best and most respected and most

Page 40: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

And then once you get to the site it is hard to judge objectively whether they are the right vendor for you. Here’s how a typical online vendor search goes:

You do a search using technical keywords like “.NET” 1. and “outsourcing” and you get back a list of a few vendors.

Are they good at .NET or just at the search engine opti-2. mization that puts their URL high in the results?

It’s hard to tell, so you just add them to the list. 3.

You could have just put a bad company on your short 4. list..ugh!

In summary, it is actually pretty easy to come up with a long list of outsourcing vendors. The trick is to use an objective process to quickly shorten the list, so that it contains only the candidates you should seriously con-sider. We cover that next in step 2.

Page 41: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

So, in total, there are more than 12 criteria I recommend for screening your outsourcing vendors, and they are divided into two categories: technical and business.

Technical criteria include expertise with the specific technology “stack” you need for your product. Examples are Java, Microsoft .NET, and PHP. Can the team adapt to your software development methodology, such as RUP, agile, and test-driven development?

Step 2: Screen— Use Key Criteria to Shorten Your List

There is probably nothing more important in the pro-cess than screening. This is the step that will separate the good firms from the great ones, the bad from the really bad. Your first pass at it should go quickly. Two stacks – good firms and bad firms. But then it comes down to all the important attributes you need in an outsourcing partner.

So, what are the important characteristics you want to look for in your outsourcing vendor? What’s worked for companies in the past? From my experience and ex-haustive research, here are the top three criteria I rec-ommend that you use to select your outsourced team:

• Technical competence • Experience working on your size project • Overlap with your workday

Page 42: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

And of course, there is something critically important that if not totally appreciated and understood could have disastrous effects: The outsourced team must show respect for your intellectual property by using appropriate technical, legal, and personnel procedures. Ask if they have had situations in which a client’s intel-lectual property was at risk, what actions they took, and what the final results were. This one may be difficult for a vendor to come up with. And some may be offended. But that might be a red flag. It all comes down to re-spect. And the law. But remember, when you are work-ing with an overseas company in a foreign land, there are different rules, different laws and, of course, a differ-ent culture you are dealing with.

You’ll also want to consider the time difference. This is one factor that many companies totally forget about. But it’s really important. After all, how are you going to work on a project together if the times when you’re awake, they are sleeping?

Business criteria include cost, of course, but also the number and size of projects performed for other clients. Is this firm big enough (or small enough) to handle your projects with the importance they deserve? To you, a project needing a team of 10 engineers may not be small, but try getting even the time of day from a large outsourcing company that has taken on your project but usually bags projects needing a hundred engineers or more.

From Software without Borders book:

Page 43: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

From the West Coast of the U.S. to India it’s 13.5 hours. It is a little better for the East Coast, en-abling overlap between the East Coast morning and late afternoon in

India (8 a.m. EDT is 5:30 p.m. in India). However, if you prefer an overlap with conventional workday hours, you may want to consider Central and South America. Coun-tries in Eastern Europe can have some overlap with the U.S. morning and significant overlap with the Western Europe workday. Definitely something to consider.

Now back to the top three criteria…

Let’s look at these vendor selection criteria in more detail. As you might expect, the highest priority is the technical ability of the outsourcing vendor.

Page 44: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Generally, the use of .NET and Java requires a more so-phisticated engineering team. C# and Java can support the creation of complex programs developed by a team

of engineers. The scripting languages used in the LAMP stack can be used to create sophisticated programs too. However, many projects using scripts written in PHP (or Perl or Python) are relatively small and developed by individual engineers and freelancers.

Programming in C and C++ is a relatively specialized skill reserved for device drivers and programs that run on specialized hardware. Software that supports mil-lions of users on a web site like Google or Yahoo is often written in C++. This is a different environment than the older Microsoft Visual C++. Visual C++ was used to cre-ate smaller programs for use on individual PCs running Windows.

Checking for Technical Competence

You need to go deep into particular details to confirm that the outsourcing vendor has the experience you need. Make sure they have successfully completed proj-ects for other clients using your target technology.

It is pretty easy to find outsourcing vendors that spe-cialize in one or more of the five common technology stacks—Microsoft .NET, Java, PHP, C/C++, and COBOL.

Some will specialize in just one of these, but it is also common for vendors to have a track record with two or three.

Page 45: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

With more than 25 engineers, the management and communication structure of the group becomes the dominant success factor. If you need only one or two engineers, consider using individual freelance program-mers, found on web sites like Elance, oDesk or RentA-Coder.

Pattern Recognition

Another useful technical ability is the use of design pat-terns to reduce programming time. Most professional software development teams now regularly take advan-tage of their experience with design patterns as they begin new projects. Following well-known patterns enables programmers to write code more quickly, while reducing the chance of errors when compared with cre-ating software completely from scratch. You will want your offshore vendor to be familiar with design patterns if you rely on them to make professional technical deci-sions about your software architecture. Keep in mind: Most software is developed by small, agile teams of between 5 and 25 engineers. Fewer than 5 and your success will depend heavily on the qualifica-tions, skill, and experience of the individual engineers.

Page 46: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Selecting an offshore software development vendor is not a simple purchasing exercise. It is an investment in the future of your company.

Remember, at the end of the day, you are really hiring employees here. Any company, especially in today’s business environment looks at over 500 resumes be-fore they even come up with a short list for filling a new position. They then select 20-30 candidates, do phone interviews with 15 of them and then bring 10 of them in for a series of personal interviews. And that’s just the first phase of the whole thing!

The process of selecting an outsourcing vendor should be no different. Vigorous, comprehensive, and totally methodical. No stone left unturned. A year long process for many. And a very tiring one at that. But if you save $1-2 million dollars and ensure the long term viability and success of your suite of products and your compa-ny, it will all be well worth it. Very well worth it.

Most software is developed by small, agile teams of between 5 and 25 engineers.

Page 47: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

Vendors on the list should be able to satisfy your most important criteria for technical skill, team size, and abil-ity to work and collaborate with you during acceptable hours in your day.

This third step is making your final decision. It involves looking in detail at each vendor to discover which is the right one for you. Each one will have their plusses and minuses. One that has a phenomenal team in place may not be lined up with your working schedule. Another that has good, but not industry leading skills may be located in your same time zone. You have to weigh it all and ultimately, figure out what the “deal breaker” would be. The key is to look at the three R’s of references, resumés, and rates.

Step 3: Select the Vendor

Selecting the vendor is the toughest part of the whole process. You’ve done your research and have a great list of companies staring you in the face. But how do you pull the trigger? How can you hedge your bets to insure that the vendor you choose is the absolute best vendor for your software project? Well, at the end of the day, there is always a risk, but because of everything you’ve done up to this point, it will be a calculated one. And remember, what will ultimately determine success is whether or not you build rapport with your outsourced team and build a solid relationship based on trust, un-derstanding and mutual respect. That can really carry the day – in any business relationship.

By now, you have gotten down to a short list of vendors to consider further.

Page 48: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

The questions you ask should confirm technical abil-ity. What creativity do they exhibit in finding solutions to problems? What is their ability to collaborate? What kind of specification and ongoing direction is needed? Were there any problems or issues? Listen carefully to their answers. Analyze what they are saying as much as what they aren’t saying. That’s important.

Want to find out how their English is? Schedule a phone interview of the engineers that will be assigned to your project. I have carried out “interviews” by instant mes-senger if the engineer does not speak fluent English but can read and write it. The purpose of the interview is to confirm the engineer’s technical skills and ability to communicate, which clearly are important attributes in a potential vendor.

Here are all the tasks, including two optional things you can do to investigate further:

• Check references • Examine resumés • Negotiate rates and terms • Visit them (optional) • Do a pilot project (optional)

What others say about your potential vendor speaks volumes, literally. A vendor that has 30-40 clients out there that are raving about them says a lot. And be aware that you should select only an outsourcing ven-dor that has positive references. The best references are with clients in your own country. But some outsourcing teams have done great work and have references only in other parts of the world. They could still be a good choice.

Page 49: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

After all, this could be the start of a long and fruitful relationship, one that pockets you millions of dollars for many years.

And of course, everyone wants a good deal, and many outsourcing vendors will do their best to negotiate with you to win your business. However, there is a limit to how deeply the good vendors will discount. After all, they are in business to make a profit, and they have overhead of offices, salaries, and equipment to pay for. These costs are much lower than what you would pay in the U.S., and that is why offshore outsourcing rates are lower to begin with.

Time for Negotiation!

Ah, the money. (and the terms) This is the time that can make or break a potential project. Of course, the whole thing will be a bit easier than some of the negotiations you’ve had with U.S. companies because the costs will be much lower. And that’s a big part of the contract. But, there’s so much more to negotiating than simply the dollars you are paying. There’s the project length, who will be working on the project, intellectual property, and much more. Note: Your goal is not to come out the victor, but to have a fair, win-win negotiation. One that both parties are happy with and can move forward with confidently. So, don’t go into this phase with a “winner takes all” mentality. That will most certainly turn off the vendor. Remember, you’ll be at your best in their eyes if you try to see things from their perspective too. I know, I know, it’s hard for Americans to do, but you must try. It will pay off big time.

Page 50: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

And remember, to employ the equivalent team in the U.S. will easily cost you $50 to $60 an hour or more per engineer employee and much more for contractors. Offshore outsourcing gives you significant savings even without negotiating.

And how about retaining ownership of all the source code and intellectual property? Important: NEVER EVER negotiate these items. They are yours, all yours. The copyrights for the source should all be assigned to you or your company. And the programming work should be completed under a nondisclosure agreement to protect your trade secrets. The significance of this point cannot be overstated. If you don’t cover your bases with this one, it could lead to a huge problem, one that could take years to resolve, if ever. Many cultures have a differ-ent opinion about these types of issues, it’s important that you make it clear that these items are off the table.

Also, don’t bring up the fact that you can get a program-mer in the Ukraine or China or any other place for $8 an hour. This is probably true and is absolutely fine if you just need one programmer for a non-critical project. But, it’s not a fair comparison. If you need an outsourced team, you will also need to pay for the infrastructure and management necessary to support them.

The copyrights for the source code should all be assigned to your company.

Page 51: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

If they have legal counsel, make no mistake about it, their attorneys are writing lopsided agreements, con-tracts that favor them. And they will sometimes do it in a very sly way. Of course you say, “they are attorneys!” Bingo. You can never be too cautious. And again, this is not mentioned to scare you away from overseas out-sourcing. It’s really good advice for any agreement, with any company, whether they are located half way around the world or down the street from you.

And some agreements that you see will be shockingly one blatant. The worst ones have so many one-sided terms and conditions that any smart company would refuse to do business with a vendor like this immediately. Their so called “standard” agreement may be very “unstandard” indeed!

Contract Elements

This last important step is sometimes a slam dunk, but not always. It is the time when any “slight of hand” or discrepancies can come to light. Because even if you have agreed to everything over the phone and have a mutual understanding on every important point, what comes back in writing – and hard to decipher “legalese” – can be very different. It happens more frequently than you might think. And of course, many of us sign con-tracts without really even looking at them. Glancing over an agreement doesn’t count. You need to read every word, every section and most importantly, understand it.

With every section of the agreement, you need to ask yourself: “does this favor them or us?” Then go the next section, “does this favor them or us?” Get the point?

Page 52: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

• Assignment of copyright. This is usually a separate part of the agreement that specifically assigns the copyrights of the software source code to your company.

• Nondisclosure obligations. These contain the definition of your proprietary and confidential information and an agreement not to disclose it. State the length of the agreement and the rights of each side to end it. Terms of one or two years with the ability for either side to terminate with 30 days’ notice are common. And both sides agree not to enter into other agreements that conflict with this one.

• Noninterference with business. This clause specifies that neither party will interfere with the sales and other business activities of the other’s company or hire away employees of the other for some period of time.

The Important Elements

Your main or master services agreement or MSA should include these elements:

• Independent contractor relationship. The outsourcing company is an independent contrac-tor, and its engineers are not your employees. This dis-tinction has important tax consequences in the U.S., especially when you are hiring individual contractors. Regarding intellectual property rights, you own all that is produced, including source code, inventions, etc.

• Intellectual property rights. You own all intellectual property that is produced, in-cluding source code, inventions, etc.

Page 53: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

• Force majeure. This limits the liability of both parties if work is inter-rupted by major natural disasters, like fire, flood, and hurricane, or by man-made causes such as war, terror-ism, and government regulation or restriction.

• Assignment. The outsourcing vendor should be restricted from contracting out (or outsourcing your work) to another vendor without your written permission.

• Governing law, jurisdiction, and venue. You want to make sure that if there is an issue that the laws of your own state and country will apply.

Page 54: Fearless IT Outsourcing

When You ShouldHow to Select a Software Outsourcing Vendor

Fearless Software Outsourcing by Steve Mezak

An Exhibit with Work Details

You will usually add at least one exhibit to your master services agreement to cover the details of your out-sourcing engagement. Additional exhibits are used for each separate project you outsource with the vendor. The exhibit will include as much detail as you need to describe the engagement or project. A statement of work, usually copied from the proposal, is included. If a specification or statement of requirements is available, it will also be included.

The pricing and payment terms are also included in the exhibit, as is provision for expenses such as travel. In engagements where you have a dedicated team of pro-grammers, there can be a rate schedule for the kinds of engineers that will be assigned to your team. For exam-ple, there can be different rates for technical architects, project managers, junior and senior software develop-ers, test engineers, and so on.

Page 55: Fearless IT Outsourcing

Chapter 4Conclusion

Page 56: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

If you approach your outsourcing project with confi-dence and a comprehensive plan, that will make all the difference in the world.

But I know your time is limited. You have lots of impor-tant things to handle in your business. We all do.

So, let us help.

As CEO of Accelerance, I have made it my life’s work to help companies just like yours navigate the software overseas vendor terrain and “cross the chasm” to out-sourcing success.

Our company does one thing and one thing only: We help U.S. companies locate the right offshore IT development resources.

So, what do you think about software outsourcing now? A bit more knowledgeable? Maybe a little more confident? I hope that’s the case. It’s my sincere goal to communicate everything there is to know about this complex topic and distill it down to the most impor-tant elements. From initially making the decision to outsource, to understanding the situations when you should consider it to ultimately selecting a software vendor, hopefully I have provided you with the details you need so you are prepared to go to the next step. You have mastered “Fearless Software Outsourcing” and now know how to partner for application development “Anywhere on Planet Earth”.

Software outsourcing should be simple. But, the reality is that it is not. There is lots to know and many vendors out there just waiting for your inquiry. The thing to know is that preparation and process will carry you far.

Page 57: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

outsourced software development. That’s our guarantee and that gives you the power to get the project done, ahead of schedule and below budget, not the other way around.

Simple and reliable – that’s what it’s all about. Our Rapid Referral program gives you hassle-free, high-quality off-shore software application development that takes ad-vantage of low-cost offshore outsourcing. And you can get started today. With our complimentary consultation, partner scorecard and referral process and introductory conference call, you can be well on your way.

With our network of deeply assessed and pre-qualified programming teams and professional software devel-opment services, we are positioned to help any compa-ny who needs immediate assistance for any IT project, large or small. Any Technology. Any Country. Accelerance provides hassle-free offshore software and IT outsourcing for companies everywhere.

Cutting programming costs? Can’t hire great program-mers locally? If you’ve exhausted all your options and are not sure who to turn to – Accelerance can help. And if you’re frustrated by the large, impersonal software outsourcing vendors out there, we understand. At Ac-celerance, we’re different. Our Global Partner Network has the right size vendors you need, providers who will get the job done on time, on budget and to your total satisfaction.

But there’s more: Accelerance guarantees our offshore software development partners will perform. In some cases Accelerance takes complete responsibility for your

Accelerance guarantees our offshore soft-ware development partners will perform.

Page 58: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

Dean Haritos, CEO of PushMX just couldn’t get his outsourcing vendor in China to add enough program-mers to get all features they needed in their software product implemented in time. But to switch vendors he expected it would take him 6 months of valuable time. In stepped Accelerance and within a day was able to recommend three partners in India, Nepal & Vietnam for Dean’s short list. After a quick evaluation, PushMX ramped-up small team in India in 6 weeks. After com-pletion of an initial pilot project, the PushMX dedicated offshore team ranged between 6 to 17 developers over 3 years.

Offshore Software Development Success Stories

ChemSW is a small company developing software products for chemical industry. They are based in Cali-fornia but has a software develo pment team in update New York. It is difficult for the company to find enough Microsoft .NET programmers in Ithaca and they decided to looking into offshore outsourcing. CEO Brian Stafford spoke to several vendors and got a wide range of an-swers to questions about expertise, rates and locations. It was all very daunting. Luckily Brian found Accelerance and ChemSW was able to easily expand their software development capabilities with an Accelerance partner in Costa Rica in a few weeks. The full ChemSW story was written up in a Business Week SPECIAL REPORT on February 13, 2009

Page 59: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

Then Keith contacted Accelerance. We recommended an Accelerance partner in Ukraine with an expert RoR team. They passed Keith’s test with flying colors and have exceeded his expectations every step of the way for speed, quality and even deployment of the web app in the cloud ..

Keith Hardwicke, co-founder of K&L Consulting had a new client that wanted to develop an online job inter-view video system as a 24/7 way to connect people; those looking for employees and those looking for a job. The new web application would be implemented with Ruby on Rails and Keith new it was too big of a programming job for just himself. And if he had to hire a team of programmers, he wanted to save money by going offshore. Keith put together a small programming test with a couple dynamic web pages that can easily be created in Ruby on Rails in a day or so of programming. He used it to determine the qualifications of each off-shore vendor he contacted. The first vendor failed the test – the software worked and it was written in Ruby but did not use the Rails framework. It was a major mis-step by the vendor.

You can hear Keith’s full story of selecting a software outsourcing vendor and the best way to specify the software you need in the webinar An Accidental Programmer’s Journey to Offshore Development: & the Shortcuts He Learned Along the Way

Page 60: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

A careful review of their needs for technology and an Agile software development methodology enabled quick selection of an Accelerance partner in Argentina with workday time zone overlap for collaboration on the inevitable changes required, despite that perfect spec they started with. Jackie also benefited from the technical expertise of the partner who recommended the relatively new MVC architecture rather than less flexible ASP.NET implementation .

Jackie Slovak is the Application Systems Analyst at Easter Seals-Goodwill Northern Rocky Mountain, Inc. (ESGW-NRM), a non-profit organization that is a chapter of both the Easter Seals Disability Services and Good-will Industries national organizations. ESGW-NRM de-velops software in their IT department office in Great Falls, Montana that gathers and organizes information in multiple offices in the states of Idaho, Montana, Utah and Wyoming. ESGW-NRM is using offshore outsourcing to save money while building time-saving applications using Microsoft .NET technology. Jackie and her team created what they thought was the “perfect” specifica-tion for a new application needed for case management to comply with state regulations. But as a non-profit ESGW-NRM could not afford to make mistakes or wrong turns in their outsourcing.

Hear Jackie’s story of transition from a fixed-price outsourcing project to full Agile in the webinar Over the Waterfall and into the Rapids: A Better Way to Manage the Risks of Outsourced Software Development

Page 61: Fearless IT Outsourcing

When You ShouldConclusion

Fearless Software Outsourcing by Steve Mezak

We go to work on our own dime to get it done right and on schedule.

Want to read more?

Be sure to go to our website at www.accelerance.com to review our webinars, whitepapers, articles and blog posts on important topics in the software outsourcing industry.

And when you are ready to talk, we are here. We look forward to helping you!

Thanks for reading –

Schedule your free phone consultation today. . .Call 1-877-992-2235 x100

Our Expertise is Your Benefit

We are the industry leaders for good reason. We know offshore IT outsourcing. With extensive experience inte-grating in-house and global outsourced development teams, we have led dramatic cost and time savings for companies everywhere. With more than 25 years of soft-ware development experience, the entire Accelerance team is here for you.

Only Accelerance has carefully evaluated hundreds of vendors around the world and will recommend the best one for your outsourced software development. You’ll get your software completed – the right way - and have the peace of mind you need so you can focus on your core business.

And, as I mentioned, we stand behind our global part-ners. Should your experience be less than adequate, Accelerance will fix it. No fine print. No finger pointing. No quibbling.

60