the keys to successful software offshoring 1. … · 2016-05-30 · software engineering. ... the...

16
SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014 1 THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. Welcome to the world of offshore software With the proliferation of the internet in the 1990’s came a remarkable change in software engineering. No longer were software teams required to reside in a single location but eventually were linked across towns, nations, and oceans. And, as with any service that can be obtained from a global marketplace, nations in Asia and Eastern Europe began to leverage the strength of their education systems to build software- services industries aimed at providing strong but lower-cost software labor to West European and North American high-tech firms. Today these offshore software companies are capable of providing top-notch engineering talent at 1/4 the cost of ‘on- shore’ software engineers in these target markets. 2. Why offshore? a. Cost Reduction The most common need for engaging an offshore software team is financial; the client is routinely required to expand their product line with little increase in R&D budgets. This category also applies to those companies interested in improving their financial Operating Margin. b. Scaling (up and down) Another reason cited for offshoring is to allow the client to bring on temporary software staff which can be eventually released should headcount demands wane. This provides the on-shore client the ability to ‘protect’ their long-term employees who can carry forward with the company’s institutional knowledge. c. Legacy deployment A very typical use of engaging an offshore team is for the purpose of offloading legacy technology. Often this is a cash-cow product owned by the company but no longer a leading-edge technology that challenges their engineering staff or may no longer understood by their engineering staff.

Upload: others

Post on 10-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

1

THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING

1. Welcome to the world of offshore software

With the proliferation of the internet in the 1990’s came a remarkable change in software engineering. No longer were software teams required to reside in a single location but eventually were linked across towns, nations, and oceans. And, as with any service that can be obtained from a global marketplace, nations in Asia and Eastern Europe began to leverage the strength of their education systems to build software-services industries aimed at providing strong but lower-cost software labor to West European and North American high-tech firms. Today these offshore software companies are capable of providing top-notch engineering talent at 1/4 the cost of ‘on-shore’ software engineers in these target markets.

2. Why offshore?

a. Cost Reduction

The most common need for engaging an offshore software team is financial; the client is routinely required to expand their product line with little increase in R&D budgets. This category also applies to those companies interested in improving their financial Operating Margin.

b. Scaling (up and down)

Another reason cited for offshoring is to allow the client to bring on temporary software staff which can be eventually released should headcount demands wane. This provides the on-shore client the ability to ‘protect’ their long-term employees who can carry forward with the company’s institutional knowledge.

c. Legacy deployment

A very typical use of engaging an offshore team is for the purpose of offloading legacy technology. Often this is a cash-cow product owned by the company but no longer a leading-edge technology that challenges their engineering staff or may no longer understood by their engineering staff.

Page 2: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

2

Bug-fixes & maintenance become a huge challenge and may pull experts away from their current assignments from more modern product lines. Passing off a legacy system for complete off-shore engineering maintenance, and even Tier-2 and Tier-3 support is very common today. To the offshore teams the product is new, different and interesting. The offshore team may require one or more visits from a legacy system expert to help them ramp on the product and generally that is enough to allow the team to take over complete product ownership.

d. Skill needs

Believe it or not, an offshore team with many years of experience and with a wide customer base is very likely to develop products across many technology domains including cutting-edge technologies and verticals. For this reason it is a common occurrence for even a team in a remote location in Asia or Eastern Europe to have engineers with the precise

competency a new client may desire. And since offshoring is as common as ever today, there is an increasing likelihood that the offshore teams will be up to speed on the same tools, technologies, and processes as most on-shore R&D centers in the Americas and Western Europe.

Almost every high-tech company in the United States depends heavily on immigration-based talent. In order to satisfy their skill needs it’s not uncommon for Fortune 500 companies to have up to 30% of their skilled technical staff arrive from foreign lands. The cost of providing immigration services for employees, the annual caps in working visa’s such as the H1B, and the complexities of the immigration process can be generally alleviated through the option of off-shoring.

e. Verification and Validation

System-testing or black-box testing is a very common practice for offshore software centers. Why? Well it allows a client to pass along a software product for testing, without having to expose the sensitive internal components to an offshore firm they may know little about. There also is a plus in having a separate team

test your product as they are likely to probe into sensitive areas or test corner cases the client simply has not considered. Quite often system testing is one of the first steps in bringing on an offshore team. However, it should be noted that today, system testing is a rather simplistic exercise for a highly experienced offshore software center.

Page 3: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

3

3. Where to offshore

a. India

It should be no surprise that when one mentions India one thinks of offshore software. India was the first to embrace the notion of low-cost high-tech software development centers in the early 1990’s. The large population, common use of English, and successful education system produces a high volume of software engineers. For over a decade India was the ‘go-to’ country for offshore talent and many American firms took advantage of the low-cost software labor market by establishing teams there. However, the rapid success of the software services market did come with a price as the quantity of engineers swelled, but at the expense of quality and of longevity of employment at one firm. Engineers were known to jump from one company to another in search of only a modest increase in pay which for many years spiraled upward relentlessly. Today the world’s largest offshore software firms tend to be headquartered in India. Quality software teams of course can be found – but due to the abundance many low-quality firms, clients should proceed with caution and pragmatism before formally engaging in a contract with offshore teams in India.

b. China

China is one of the more recent countries to join the offshore software services industry. While the population is quite large, the availability of reliable software centers which have low engineering-turnover remains a challenge. Communication in English is acceptable.

c. Pacific Rim

The south Asian country of Vietnam has a successful software offshoring industry. It is reportedly of reasonable quality and price but is relatively small when compared to other markets and scaling teams can be a challenge. Pricing is very competitive but reportedly is being pressured to rise as the competition for the smaller quantity of available engineering talent increases. Communication in English is acceptable.

d. South America

In recent years many software shops have opened in Central and South America – Argentina is respected for having above-average capabilities. The primary advantage of having teams in these markets is the common time-zone with the Americas. Also, many multinational firms may have software shops in Brazil mainly because of import-tariff regulations. Companies may export products to Brazil which are then subject to import duties. Some of these duties may be returned to the firm, however, if they are used to employ local Brazilian engineering teams. Communication in English is good.

Page 4: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

4

e. Eastern Europe

Eastern Europe (Hungary, Russia, Ukraine, Poland) were some of the first European emerging markets to embrace software offshoring as a means to leverage their highly educated workforce. Under the Soviet system, strong education in the sciences, and mathematics was routine – for both men and women. The result is a highly disciplined talent base of software programmers with a natural zeal for solving problems. Also, the software workforce in some of these countries includes female engineers with up to a 25% ratio, certainly higher than in American or west European high tech. Culturally, Eastern European engineers are relatively comfortable with ‘speaking bluntly and accurately’ and not leaving it to the client to ‘read between the lines’ to calculate an accurate project status. Communication in English is good.

4. What are the ways to offshore

a. Team Expansion

i. Managed by the client

For teams experienced in offshore partnering, a team-expansion, managed by the client is the most common form of engagement. A handful of software experts (both developers and testers) are included simply as part of the client’s home-team.

Page 5: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

5

ii. Fully integrated

A fully-integrated team is one that performs the same type of daily/weekly tasks as the client’s on-shore team, using the identical software processes. They often are part of any Agile Scrum activities (daily, weekly scrum sessions for example); viewed simply as another team in another time zone.

iii. Requirements can be less rigid

Having an offshore team that is tightly integrated into the on-shore team’s work flow provides some level of relief: the day to day requirements for the offshore team don’t require such rigidity in definition. Since both teams are communicating almost daily, there can be some degree of ‘looseness’ or flexibility in the assignments, allowing the offshore team to react rather dynamically to the events of the day or week – just as the on-shore team does. Note however, that this requires steady and clear and constant communication between the onshore and offshore teams. If you are unable to ensure this commitment – the offshore team integration process is not for you.

iv. T&M

Integrating an offshore team into your on-shore team generally requires the client to contract resources in what is known as Time and Material or T&M. In this manner of contracting, the client essentially is placing the off-shore team on their payroll – albeit it as an ‘expense’ and not as actual employees. The client drives the daily and weekly activity of the offshore engineers and these engineers produce a weekly time-sheet which clearly articulates on which projects they worked for the client. Typically the offshore team will invoice the client monthly and seek payment for these services in 30 to 60 days.

v. Team Selection

The offshore software vendor will often provide the client with the opportunity to interview and select some of the team members. Generally the team will be comprised of senior, moderate, and junior staff – in what is called a ‘blended team’. This is typical for offshore team formation in that it allows the offshore company to build similar teams for multiple clients – spreading the senior, moderate, and junior staff broadly across them all.

Page 6: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

6

b. Stand Alone

For clients that are not very experienced in software offshoring, the stand-alone engagement model is recommended. This method is rather simple on the surface as the client generally states their need and the software services company generates a quote (e.g. Cost and Calendar Schedule) to provide the appropriate software product back to the client. But this engagement model does require a considerable amount of up-front technical and business negotiation before a contract should be finalized.

i. Monitored by the client

In the Stand-Alone model, the client passes over a set of detailed requirements to the offshore company and then over a period of days or weeks the requirements are discussed and ‘interpreted’ by the offshore team into a type of detailed project summary. There are many methods and processes that can be followed here and the offshore company should be knowledgeable in a few different methods. Once the project is kicked off, the client should be prepared to interact with the offshore vendor at least once a week to review key project deliverables (requirements progress, defects…etc). If, as a client, you do not have the time to engage your offshore partner at least once a week for a brief phone call – you likely are not a candidate for offshoring.

ii. Only minimally integrated

When compared to the highly-integrated version of a ‘team-expansion’ model the stand alone model only requires a brief (but quality) interaction with the offshore vendor once a week. The client need not integrate the team members into the organization and likely will only have a relationship with the project manager of the offshore team.

Page 7: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

7

iii. Rigid requirements

The primary difference with a Stand-Alone engagement model is that the client must (I repeat, must) detail the project requirements in a document for the offshore team. If the client is unable to articulate the requirements clearly, then one option does exist: Provide the offshore team a list of high level requirements (e.g. “I would like the product to do the following: X, Y , Z”) and have the offshore vendor distill these marketing requirements into a detailed requirements specification – from which the final project details and cost can be calculated.

iv. Fixed Price

One benefit of the Stand-Alone engagement model is the client and offshore company should agree ahead of time on the requirement and the price. As long as the requirements do not change, the offshore vendor is contractually obligated to deliver the product, at the quality-level specified, and in the time-frame specified. It is quite common, however, for the client to alter the requirements during the course of the development cycle. It is highly encouraged that the client and offshore vendor use a ‘change tracking ‘tool or process to accurately track the changes and the ‘agreed upon’ cost and schedule for delivering these changes. Poor change management processes are one of the leading causes of offshore project delivery problems.

i. Team Selection

One primary difference between T&M contracts and fixed-priced contracts is that the offshore team generally does not allow the client to hand-pick the engineering team. This is left up to the offshore team, based on the contractual agreement that the offshore vendor will deliver the desired product, on the desired date, and with the desired quality.

5. Key factors in selecting an offshore team.

a. Domain Strength

Typically a client seeks out an offshore team with software development expertise in a certain technology domain (e.g. Web Services, Mobile, Unified Communication, Firmware..etc). The closer to the client’s target domain the better the offshore team is likely to succeed.

Page 8: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

8

i. IP protection

A rather ironic twist that is associated with a client seeking an offshore partner with a specific domain skill is the fear that the partner may somehow ‘leak’ the knowledge of one client over to another. Yet, without having the knowledge derived from working with the original client, there would have been no attraction from the new client in the first place.

It is a slight paradox. All respected offshore teams recognize and deal with this challenge: the offshore vendor will appropriately firewall off the R&D system between clients; R&D engineers will be badged to restrict their IT access; specific R&D center floors may be partitioned off for specific clients; physical security teams are deployed to inspect the staff and their credentials to safeguard building access; Regular training policies reinforce the notion to NOT share confidential client information with other employees outside the client’s team.

b. Successful experience with past clients

Recruiting an offshore team should always begin by reviewing a portfolio of past projects in a domain or technology vertical similar to that of the new prospective client.

i. References

Any respected offshore software firm should be capable of providing at least a few professional references from past projects. The prospective client should understand that it may be impossible for any past client to provide a reference since some companies outright prohibit such practice. Yet with a wide enough base of clients (and across various company sizes) there will be clients that vouch for the offshore firms quality and effectiveness.

ii. Project examples

The offshore firm should also be able to provide documentation highlighting examples of previous client work. These documents may need to be highly generalized so as to avoid the release of any confidential and proprietary information but it can be achieved.

Page 9: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

9

c. Quality processes

The offshore vendor should be exceptionally knowledgeable with most modern software quality processes. This does not just mean “how to test in” quality but also how to manage the project plan, the requirements, the translation to software, testing, documentation, and maintenance. The SEI CMMI model is one such popular quality process that should be followed – in some part. It would be important to determine if the software team has ever had their software quality processes assessed by a certified assessor.

d. Ability to scale up and scale down

It was previously mentioned that one major purpose in selecting an offshore team is to provide the client the ability to scale up and down as required. Scaling up is just as important as the offshore teams ability to scale down. Can your offshore partner add 5 or 10 credible engineers in a month – if you were to bring them the project opportunties?

e. Agile process familiarity and adaption to new processes

Most offshore teams should be familiar with Agile-based development models. There are new variants on the Agile process arriving each year. Be sure your offshore team can demonstrate (such as with previous clients) their ability to follow these processes and the popular tools involved.

f. Security

Client security is the lifeblood of any offshore team. Lose a client’s IP or data and the offshore team may never find new clients. Ensure your offshore team has multiple levels of protection from card key access, VPN, Firewalls, electronic badges, and physical security.

Page 10: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

10

g. Churn

A common complaint of clients when offshoring is the fact that they start the program with one set of engineers, and end the project with another. Some level of churn is inevitable in the offshore industry. In fact, it’s necessary. For offshore firms to sustain a level of financial competitiveness they are required to constantly bring in young professionals who are new to the workforce.

h. Shadowing

It is very important that once the project is launched, the offshore partner takes steps to minimize the impact on churn with the client. This is often achieved by providing ‘shadow engineers’ which are assigned to a client part time (the client does not typically pay for such shadow engineers) so they may monitor the technology and can quickly ramp on the client’s platform if needed.

i. Communication skills and project management

Just as in life, any successful business relationship depends on constant and clear communication. The offshore software partner must be skilled in modern project management processes and techniques. Strong project management and client communication are vital to success.

j. Cultural familiarity

If they could, the client would almost certainly select an offshore partner in the same location, time zone, language, competency, and background as themselves. But, as you have read in the opening dialogue to this white paper, most offshore centers are located far away from their target market.

That being said, it is helpful if the candidate team you are considering has a cultural affinity (e.g. they tend to think and act like you do). In my experience in software offshoring, over the past 25 years, cultural familiarity ranks 3rd in importance only behind solid communication and domain competency.

Page 11: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

11

k. Pilot project demonstration

One very successful process which can be utilized to ‘test drive’ an offshore partner is the concept of a pilot project. This pilot generally requires an NDA between the client and the offshore vendor and may require a master service agreement (MSA) – but this really depends on the client’s position. In a pilot project,

the client agrees to have the offshore team develop a product for the client which could span a few weeks or months and involve a few engineers & testers. The purpose of the pilot is to allow the client to ‘kick the tires’ of the offshore company and evaluate them across all areas of competency: language, communication skill, domain skill, accuracy, quality, delivery, documentation, etc. The client may or may not have to pay for the delivery of such a pilot – this is generally negotiated ahead of time with the offshore partner.

6. Ensuring ongoing success

a. Communication

Regular and constant communication is essential to successful offshore partnering. There are no two ways about it. If you have little or no time to engage your offshore partner at least once a week, you will likely have a low chance of success with offshoring in general.

i. One Minute Manager

You may recall this ‘management’ book from the 1990s. The gist of this book is ‘if you think there is a problem, deal with it immediately’. My personal advice when working with offshore teams is to employ the one-minute manager guide. The moment you feel your offshore partner is not aligned with your thinking – call them and align them. What you will learn, 99% of the time, is that the problem is due to SIMPLE miscommunication.

ii. Phone calls, email, and face to face

Before you hire an offshore team it makes practical sense to meet them face to face. If you are serious about offshore, then you are making a rather huge personal and professional investment in this team. Whether India, Vietnam, Russia, or Argentina – take a few days and visit the team in their time zone, in their office, in their lab and spend at least a day getting to know this new team, and let them get to know you. In my experience – this relationship-building is essential. Email, of course, is the

Page 12: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

12

most common way to stay in touch with your team. But be careful about relying on email for every discussion, especially the unpleasant ones. Consider emails you have received from co-workers (in your own company) which have confused you – and now layer that with the complexity of someone who’s native language is not English and who likely has cultural differences from your own. Whenever possible – pick up the phone (or SKYPE) and communicate in this manner – avoiding email if possible.

iii. Regular Monthly or Quarterly Reviews

Until the client is comfortable with the offshore team, and as a good ongoing practice, a monthly or quarterly review between both parties is highly recommended. The review should include the right level or next level of management from both sides that are skilled at identifying issues early. In addition, the review should include the local offshore business team member that is responsible for ensuring a completely satisfied customer in order to extend or expand the business relationship.

iv. Get it in writing

This common sense approach works well in any business matter and especially when working with offshore teams. Whenever there are technical matters discussed verbally always follow the discussion up with an email or document to ensure a clear understanding between all parties involved.

b. Client resource allocation

In any business there are specialists designated to handle components of the business: accountants handle financials, purchasing handles vendors, and there should also be a designated person to handle offshore software teams. In principle it would be valuable to assign someone to this role with a background in project

management and with some background in software development. The stronger the skill-base of this individual, the more will you find you will able to extract from your offshore partner. Your offshore liaison will be able to ‘set the bar’ regarding quality, deliverables, and the overall time frame at a level that works for the client and the off-shore partner. Just because your software partner resides in a different time zone does not suggest you can set completely unrealistic expectations regarding requirements, delivery dates, or quality levels. A liaison skilled in project management fundamentals will understand this and handle demands of the offshore partner appropriately.

Page 13: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

13

c. Looking ahead

Offshore software teams are a business like any other. Their sales assets are their engineers. The goal of the offshore team is to keep their engineers deployed to client assignments and not to go idle – if they can avoid it. The client should be aware of this situation and keep a keen eye out for new opportunities which they can bring to the offshore vendor. If the client anticipates a gap in projects, it’s OK to notify the offshore vendor ahead of time. This can allow the vendor to plan for an alternative use for the affected engineers. If the client believes that new projects will eventually arrive – it’s best to be open with the software partner as soon as possible – so accommodations can be achieved – so the client may have access to the same engineers in the future.

d. Referrals

The offshore software business is very much a word of mouth model of business development. Because of the highly personal nature of choosing a software partner, a tremendous amount of trust must first be achieved between the client and the offshore team. If a client becomes aware of an associate or another firm that is in need of software help –

making a personal recommendation of your offshore partner can create incredible goodwill between the client and the offshore partner. At a minimum this opportunity will help the partner increase revenue which may come in handy at times when other clients may happen to be lowering their offshore needs. There may come a time when the client’s generous reference allows the partner to retain software engineers that may have otherwise been released. e. Legal (E&O)

There are practical and legal considerations one should give when taking on an offshore partner. From a legal perspective the client should ensure that the client has corporate liability insurance as well as professional insurance (also known as Errors and Omissions) which may help protect them in the event that the software partner fails to produce the product through some fundamental mistakes which causes the client

a significant amount of financial loss. E&O Insurance is typically required in most professional service contracts.

Page 14: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

14

7. Price

There is a fundamental price difference between onshore and offshore labor which could be up to ¼ that of onshore costs. These are ‘fully loaded’ costs which include the offshore engineer’s salary, benefits, equipment, building, software tools.. etc. I generally recommend to the client to consider all the other factors beyond just price when

choosing an offshore vendor. A $5 or $10 difference in the hourly cost between an offshore engineer in one market versus another should not be the deciding factor in where you choose to partner. Certainly cost should be important, but more importantly are the elements of: development expertise, cultural familiarity, project management experience, quality, scalability, communication skills, and how well the software partner handles the pilot project.

a. Labor

Generally when the client and software partner discuss the hourly rate of the engineer they partner will need to cover the engineer’s basic salary, the tools they require to do their work, the rent and utilities of their office environment, and a certain amount of overhead to cover the expense of project management, and a small profit.

b. Equipment

Generally the offshore partner is expected to provide all of the equipment necessary for the software engineers to develop a software product. However, the client also may introduce custom hardware products or systems to which the software partner must have access. Quite commonly the software partner may purchase (on the open market) the specialized equipment. At other times the client may need to ship or hand-carry the devices to the software partner. The client will likely need to consult an ‘exporter’ for guidance on which items can be hand carried or shipped to the country of their software partner. It is commonly expected that the client pays for any specialized equipment required by the offshore partner.

c. On-shore visits

The benefit of offshore software teams is generally realized by the fact that the overall cost of living in these offshore markets is lower than in the clients market. However, when the client desires the offshore partner to visit – it is typically expected that the client covers the expense of the air travel, the hotel and automobile, and a daily per-diem. These additional expenses are typically well known by the software partner and should be included in the contract.

Page 15: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

15

d. Comparing with on-shore

Given the fact that the offshore software industry has been in operation for well over 20 years it’s reasonable to recognize that there are many, many successful offshore software centers which are just as ‘capable’ as software centers in some of the very mature markets of the Americas, Western Europe, and Asia. These software firms are often housed in ‘campus’ style centers with state of the art computer systems and highly educated programmers. The fundamental difference is dealing with a time-zone differences, and a dramatic cost differential.

Summary

If your business requires expanding and either your have a restricted budget or have been instructed to ‘make do with less’ then partnering with an offshore center can be of substantial benefit. Remember that the key to a successful software partnership comes down to a few mandatory responsibilities on behalf of the client:

1. Research – find a partner that has the skills you need and a cultural similarity to your own

2. Pilot – test out the software partner with a pilot project before you contract them to a long term deal

3. Communicate – regular 2-way correspondence is vital 4. Give feedback – routinely tell your partner how they are doing 5. Invest your time in your offshore partner – it is essential to success

Page 16: THE KEYS TO SUCCESSFUL SOFTWARE OFFSHORING 1. … · 2016-05-30 · software engineering. ... The south Asian country of Vietnam has a successful software offshoring ... Also, the

SOFTWARE OFFSHORING AUTHOR: JAMES HYMEL FEB 2014

16

The author of this paper is James Hymel, CEO of Mera Software Services, based in Santa Clara, California. James has a 35 year history in high tech software development with extensive experience in global software outsourcing. Contact James at [email protected] with questions or comments about this paper or with requests for software services from his company, Mera Software Services. Mera Software Services is a 25-year old company based in the city of Nizhniy Novgorod, Russia. The software skills of this 1500-person engineering firm span from the deeply embedded to mobile to the cloud – with a company focus on solving the toughest of software designs for their clients.

James Hymel

CEO, Mera Software Services, Inc 5201 Great America Parkway, Suite 320

Santa Clara, CA 95054 650-703-7226