Too often IT executives
get dollar signs in their eyes when they first hear about cheap programmers
offshore. They jump in at the lowest cost possible and then are not satisfied
with the results.
Their conclusion?
Offshore outsourcing of software development doesn’t work!
But let’s step back a
moment and think about the overall goal. It should be to create great software,
not to hire the cheapest programmers on the planet. Consider the actual costs
of hiring programmers.
If you wanted to create
great software 25 years ago then your only choice was to hire a roomful of
programmers. And it was your room and your computers. You paid the rent, the electricity
bill and provided the coffee.
Of course this is still
a choice you have today. Let’s look at the costs. Salaries vary across the U.S.,
along with the cost of living in various cities, towns and rural areas.
Generally New York is more expensive than Kansas City, which is more expensive
than rural states like Maine and the Dakotas. The following table contains seven
different average salaries for programmers in the U.S. for easy comparison with
your location.
|
Annual U.S. |
Total Annual |
U.S. Employee |
U.S. |
|
$60,000 |
$90,000 |
$43 |
$86 |
|
$70,000 |
$105,000 |
$50 |
$100 |
|
$80,000 |
$120,000 |
$57 |
$114 |
|
$90,000 |
$135,000 |
$65 |
$130 |
|
$100,000 |
$150,000 |
$72 |
$144 |
|
$110,000 |
$165,000 |
$79 |
$158 |
|
$120,000 |
$180,000 |
$86 |
$172 |
As you know, it costs
more to compensate an employee than just his or her salary. A reasonable estimate
for taxes, healthcare, retirement plans, vacation time is about 33%. In other
words, the salary is about two-thirds of the total compensation for an employee
hired to do software development. Therefore, for an accurate comparison, you
should compute the hourly cost of an employee based on the total cost (salary +
benefits, taxes, etc.) divided by the number of hours in a year: 52 weeks x 40 hours/week
= 2,080 hours / year. This is shown in the third column of the table.
But today you can
outsource. But before checking flights to Bangalore, let’s consider domestic
outsourcing to companies right here in the USA.
Guess what? Outsourcing
vendors in the U.S. have to pay the same kind of salaries that you do.
Therefore, the apples-to-apples dollar costs will be higher for the same number
of programmers you outsource instead of hire as employees. It can easily be two
or three times the employee cost depending on the length of engagement and
specialty of the skills required. These numbers are in the fourth column of the
table – a conservative 2 times the hourly cost of an employee.
So why would anybody do domestic
outsourcing then? Because you should also get a professional software
development process that is the core competency of the outsourcing firm. Outsourcing
should give you:
- A
Predictable Software Development Process
- Requirements
Gathering & Software Design
- Architecture
& Technology Recommendations
- Project
Management
- Testing
and Quality Assurance
- Flexible
Ramp-Up & Ramp-Down
In other words, you
outsource to get a proven software development process so you can focus on your
own core competency.
But
this is all getting rather expensive. For a ten employee programming team with
a relatively low average salary of $70K you will be spending more than a $1M
per year. Local domestic outsourcing can be over $2M.
Of
course the Internet has changed all this and global outsourcing of software
development was truly a “disruptive technology” that costs so much less that
people are willing to put up with imperfections like time zone and cultural
differences.
But
how imperfect and how much less expensive? What is reasonable cost for an
outsourced programming team in another part of the world?
Let’s
do a similar analysis based on a range of salaries for offshore programmers. Salaries
for programmers in many global locations are low compared to the U.S. Salaries
for junior programmers, right out of school with very little experience, are
very low, approaching minimum wage levels in the U.S.
But
junior programmers are hard to manage from a distance. Let’s consider only senior
developers with at least 3 years of experience. Their salaries are still
relatively low. But as we saw above for a domestic outsourcing vendor, any
professional offshore software outsourcing firm also needs to add in benefits,
training, management, and of course profit on top of these salaries.
|
Offshore |
Offshore Annual |
Offshore |
Offshore |
|
$15,000 |
$22,500 |
$11 |
$22 |
|
$18,000 |
$27,000 |
$13 |
$26 |
|
$21,000 |
$31,500 |
$15 |
$30 |
|
$24,000 |
$36,000 |
$17 |
$35 |
|
$27,000 |
$40,500 |
$19 |
$39 |
|
$30,000 |
$45,000 |
$22 |
$43 |
|
$33,000 |
$49,500 |
$24 |
$48 |
|
$36,000 |
$54,000 |
$26 |
$52 |
Is it true that you can
get senior level, highly trained programmers for only $30 per hour? Absolutely. And paying a rate of $35 per hour can still be a good deal. Programmers who are less expensive than this will be further away, harder to communicate with and have a higher Total Cost of Engagement or TCE. A programming team that is much less expensive is probably too good to be true.
The TCE includes the
cost of your additional management, travel and the overhead due
to distance and communication issues on top of the cost of the programmers. It
is hard to compute exactly, but most outsourcing experts recommend you plan to spend an
extra 20% to 30% of your outsourcing budget for management and travel costs.
The
Runtime Bottom Line
Remember, your goal should
be to create great software. Consider the rates you are likely to pay for
senior developers who you can expect to work as smart as software engineers you
would hire in the U.S. as employees. Selecting your offshore vendor on price
alone will only get you junior programmers and you must tell them exactly
what to do every day. That results in a much higher TCE.
The good news is you can use offshore software outsourcing to create great software and save money at the same time. When you hire a programming team with experienced senior programmers then what you pay will be a lot less than hiring programmer employees in the U.S. Around 50% less.
Until next time,
Steve@Accelerance.com
Accelerance,
Inc.
Risk-Free
Outsourcing
+1-877-99-ACCEL
(877-992-2235) x101 Toll-Free
+1-650-472-3785 Global Calls + Fax
Or
contact me at: http://www.Accelerance.com/contact.htm
Author
of the new book -
Software without Borders: A Step-By-Step Guide
to Outsourcing Your Software Development
www.accelerance.com/swb.htm
I think that was too high the cost you have there. Is there any cheaper price of it.
Posted by: Offshore Software QA | June 24, 2010 at 02:49 PM
how long do you think this price would last, since the IT is so dynamic
Posted by: tigia | July 03, 2010 at 11:15 PM
Good questions. Are these rates too high? Perhaps. I used a range of salaries that I have learned from my global partners are typical of what a high quality software development service provider pays to their employees. Do you care to share your costs and rates?
Will these rates change over time? Probably. They might even go up!
I have no doubt companies wanting to outsource can negotiate lower rates. The point of the blog post is companies have a risk if they go too low and the vendor has no alternative to put in less qualified employees who are paid less so the vendor can still make a profit.
Western companies that are used to paying relatively high salaries (compared to other parts of the world) need to be realistic about the lower rates they will pay.
Evaluating and selecting an outsourced software development provider is closer to the employee hiring process than it is to an exercise in purchasing. Does a company ever purchase an employee? Of course not.
The hourly rate (or salary) is just one criteria for selection of your global software development team. My post cautions the reader to not make it the only one.
Posted by: Steve Mezak | July 06, 2010 at 08:13 AM
Outsourcing is the best practice since before. What we need is careful choose of company, do a thorough research or ask a referral if possible to ensure that you are working with a good and reputable company. You can read more outsourcing guides and ideas here....
outsourcingopinions . com
Posted by: Philam | August 04, 2010 at 06:51 PM
I found your overview to me spot on.
I have used several options for outsourcing projects with the USA, and using outsource resources to develop software for projects outside the USA, including Kuwait, Saudi, and Latin America, etc.
My experience tells me that along with the years of experince of the individual developers one needs to add the cost of one expert (8+ years experience)to every eight developers with 3+ years. This expert also needs to have 'related' domain knowledge, related to the project at hand, be it financial, engineering, telecom, etc. and must be fluent in the language of the client.
I find that the client will give up on the resource(s) despite what is on their CV, if language is a 'preceived' issue.
Also clients have zero tolerance for having to explain basic industry terms. (i.e. I had a developer ask what is a KWH? On a related electrical engineering project and we were unable to establish the creditability of that resource in the client's eye. BTW - KWH stand for Kilowatt Hours, basic if you have ever gotten a electric bill in the USA...
So I will agree that about a 50% savings is a good ballpark to have the absolute best resources helping you succeed.
Posted by: Ely Compean | August 25, 2010 at 02:14 PM
Outsourcing is the best online service for small and middle industries. Your price lists are nice. your overview is good. Thanks for sharing this information.
Posted by: Greet Verellen | January 24, 2011 at 02:14 AM
Your post on offshore outsourcing is great. You have nicely describe about all the aspects of outsourcing and also elaborate distinguished rate chart to show the exact financial conditions for outsourcing. Thanks for sharing such a useful information.
Posted by: Sitikantha Pattnaik | February 01, 2011 at 11:05 PM