Avoiding php programming outsourcing pitfalls
How to outsource your php programming effectively.
By Jeff Finkelstein, Founder of Customer Paradigm
If you’re looking for a way to have php programming done for your website
(perhaps for a content management system, a customized blog, or other web application
that needs to tie into a mySQL database), you have several different options.
All have advantages and disadvantages, and many of them will depend on your
Before outsourcing your php programming project, we’d recommend looking
at the following options, so that you can understand which approach will work
best for you.
Option A: Hire A Full Time PHP Programmer.
The most expensive way to go is to hire a full time php programmer to work
on your website applications. If you are a large organization, this is sometimes
a good way to go. But more likely, you don’t have enough php programming to
keep someone busy on a full time basis.
Pros for Hiring Full Time PHP Programmer:
Hire a full-time php programmer allows you to have maximum control over their
schedule and tasks. They can attend all of your meetings, and are on-site on
Cons for Hiring Full Time PHP Programmer:
It’s expensive to get a top notch php programmer that has years of experience
working with many different types of applications. Such a programmer can be
tough to find, as well as keep long-term. It can be a big commitment if you
don’t have full-time work for them to do. Programmers like challenges, and need
to be supervised, both of which require a fairly technical person to manage
them. If you try to bring someone on who is learning php as they go, they’ll
spend 10 hours learning how to do basic tasks that an experienced php programmer
can fix in 30 minutes to an hour.
Option B: Hire A Part Time (Freelance) PHP Programmer:
This option allows you to use a php programmer on an hourly or project basis,
but not have to worry about a full time commitment. This allows you to still
invite the php programmer into meetings and communicate effectively.
Pros for Hiring Part Time / Freelance PHP Programmer:
You don’t have to make a full-time commitment, and you can often get someone
with well-rounded experience (because they are working on several different
projects at the same time). Like a full-time PHP programmer, they can attend
all of your meetings, and are available on-site at your location.
Cons for Hiring Freelance PHP Programmers:
You still need to have someone who is somewhat technical manage and supervise
the freelance php programmer. You are “stuck” if they go on vacation
if something breaks, or if another client has a big project that takes up all
of their time. Many people decide to freelance between looking for permanent
work, so that by the time you get someone trained and up and running on your
php web applications, they have one foot out the door and are looking elsewhere.
You can get really, really lucky and get a great php freelance programmer. But
there are a lot of mediocre ones out there that masquerade as talented ones.
I’ve found that many tend to talk a lot of technical babel and jargon to hide
the fact that they don’t know how to accomplish a programming task (such as
modifying an ecommerce system). And not to be overly stereotypical, but I’ve
also found that some php programmers tend to feel like the world owes them something,
and that they are entitled to be paid lots of money for doing very little work.
And there’s also a huge range of talent… what a top-notch programmer should
be able to do in an hour, another less experienced php programmer might take
a full week. When I’m hiring programmers for my team, I ask a few basic questions
on the phone, to gauge their basic skill set. Those that don’t pass don’t get
called into the office. If you want a list of the questions that I use, feel
free to contact me using the form below.
Sorry to sound jaded, but I know a lot of people that have been burned using
php programmers. I’d say we get about five calls every week from people who
tell us, “Our php programmer just left, and we need someone to help finish
this project. Can you help?”
Option C: Hire Overseas PHP Programmer:
This option is often attractive from a price perspective. You will spend much
less per hour on someone who lives and works in a country like India, China,
Russia or Poland, and knows how to do php programming. But if you are going
to go this route, it’s best to keep several things in mind, proceed with caution,
and keep the total cost of the project in mind (including the time you need
to spend communicating with someone overseas and managing the project).
Pros for Hiring Overseas PHP Programmers:
The price per hour can be really cheap for an overseas php / mySQL programmer.
It’s usually in the $10-$18 per hour range, depending on who you talk to. Sometimes
it’s even less. There are more people graduating from engineering colleges in
India than are graduating from college in the entire United States each year,
and many of these outsourced, overseas programmers have strong math skills to
help break down complex programming problems.
Cons for Hiring Overseas (India/China/Russian) PHP Programmers:
There are many cons for directly hiring overseas php programmers… and I’d
again recommend caution before you go down this road:
- Time Zone Issue. Most of the overseas programmers (especially
the ones at a low price) are not going to be working during your business
hours. This means that you either have to wake up really early or stay up
really late. Or you send a lot of email that isn’t answered for 12-18 hours
- Lost Production Cycles. Because you’re not on the same
time zone, and someone is working on your php / mySQL programming project
on the other side of the world, if something doesn’t work, and you send an
email about the issue, it can take a long time for them to take a look at
it and fix it. And then, if they don’t get the fix done 100%, it’s another
day of back and forth. This one reason alone is cause for caution.
- Language Barrier. English is not usually the first language
of a php programmers in India, China, Russia or Poland. It’s usually their
second or third or even fourth language. It can be tough to communicate complex
concepts via email or instant message with someone that doesn’t understand
how your php web application will be used in the real world by users.
- Communication Issues. You’re not going to be able to sit
down at the same table with an overseas programmer to discuss your php project.
If you are more of an “ideas” person and want to leave all of the
intricate details for how a web application programming project should work
to your programming team, you might be disappointed.
- Project Scope Issues: Just because you have a good feel
for the scope of the project doesn’t mean that an overseas programmer will
be able to translate your non-technical thoughts, scope of work documents
or flow diagrams easily into php code that works.
- Technical Skills. Just because you’re outsourcing you php
project, you want to make sure that you have technical understanding of the
project itself as well. lf you’re not very technical, it’s easy for programmers
overseas to make assumptions that cause the system to be needlessly complex
or not work how you want it to.
- Testing. Unless you get someone really good, you’re going
to have to spend a lot of time testing their work to make sure it works as
you intend it to. This can be extremely frustrating.
- Yes Men / High Power Differential. It’s unfortunate, but
you likely won’t get someone who says “no” to a sub-optimal suggestion
you might have. I’ve been told more than once that I’ve gotten the job with
a client because we were willing and happy to disagree with them over aspects
of a project. But if you outsource to someone who lives in an emerging country
like India, Pakistan or China, their culture is usually based on a “high
power differential.” In sociology circles, this means that the boss (you)
tends to have a lot of power over the employee (them), and the employee fears
dissent at all costs. And so whatever you say, they will do. Even if it doesn’t
make a lot of sense, or there is a much better way to accomplish the php programming
- Your Project Management Time. If you’re outsourcing your
programming overseas, a good rule of thumb is that you’ll likely spend about
1 hour of your time managing, communicating and testing the php code for every
3-4 hours that they work on it. For a one-day (8 hour) programming project,
this might mean you spend 2-3 hours testing and managing it.
- Company vs. Freelancer. If you are working with a freelancer
overseas, all of the issues I mentioned above still can apply (i.e. not available
if other big projects come in, or if they are looking for full time work)
- Total Project Time. It might be that you’re paying $15
per hour for php programming to an overseas programmer. However, if it takes
an overseas programmer 4 hours to accomplish something (and includes 1-2 hours
of your time to describe what you want, type it out into an email, answer
a few questions, test it, send back comments, etc), you’ve just spent 6 hours
of time. If you are paid $50,000, then your rough hourly rate is $25 per hour.
So you’ve now paid: (4 php overseas hours x $15 per hour = $60 + 2 of your
hours @ $25 per hour = $50, for a total of $110 for the short project, and
50% of the cost of it is your time. If you make more than $50k per year, then
the equation can change quickly. When you add up everything, you need to make
sure that the math works out in your favor.
All of the cons aside, outsourcing a php project overseas can work if (a) you
find a solid overseas programmer, and (b) you’re willing to put up with time
zone issues, language barriers, communication difficulties and spend a great
deal of time proactively testing and managing the project. But it can be a big
source of frustration for many people as well, who don’t have the time and desire
to manage a project. The biggest thing that I hear time and time again is how
much work it takes to outsource.
Option D: Hire A Company Specializing in Outsourced PHP Programming:
Of course I’m a bit biased with this option, as I think it’s the best one,
and it’s also what we usually offer to our clients. But after spending years
helping companies do php programming, I’ve found that for most organizations,
hiring a company like ours can be a cost effective option. Why? While the hourly
price is more, the total project time, including your time, is greatly reduced.
Pros for Hiring A PHP Programming Company:
The pros for hiring a company that specializes in PHP programming include having
a dedicated project manager that can “translate” your ideas into clean,
workable code. The company can work with you to figure out exactly what you
want to accomplish. Your project manager will speak your same language, is on
your same time zone, and doesn’t take 18-24 hours to answer your emails because
they’ve gone to sleep on the other side of the world.
Other reasons to hire a company that specializes in php programming:
- The company is not just made up of one freelancer who might be tied up on
someone else’s project, is looking for a full-time position, or is flaky and
leaves halfway through a project.
- You’ll save a significant amount of time managing the project.
- You don’t need to have strong technical skills in order to get a php programming
project off the ground, or to manage a technical programming team for a mySQL
database / php application.
- Project Scope can be easily defined, but modified and changed as the situation
But the biggest reason to hire a company that specializes in outsourced php
programming is that if you find a good company that is passionate about their
work, they will disagree with you. And it’s usually over things that you might
not have thought were important. My team often makes polite suggestions to clients
when things don’t make sense, or could work more smoothly a different way.
Cons for Hiring A PHP Programming Company vs. an Overseas Programmer:
The price per hour or per project may be a bit higher at a company vs. the
hourly rates you might pay someone who lives overseas. If you are a highly technical
person, don’t mind all of the cons for communication, time zones, testing and
have a lot of time on your hands, this might not be as good of an option than
going direct. If you decide to go with an overseas programmer, make sure you
have a clear understanding of what you want to accomplish (down to suggestions
on how to set up a mySQL database or specific php programming functions), so
you don’t fall into any of the outsourcing pitfalls for php programming.
We hope this helps!
I hope that you enjoyed my thoughts on php programming pitfalls, and how to
best go about getting php programming accomplished. If we can help you with
any of your php programming needs, please call John Rush at 303.473.4400 x 17
out this form to have him contact you now.