Maybe outsourcing QA isn't such a good idea after all.(skeptek.com)
skeptek.com
Maybe outsourcing QA isn't such a good idea after all.
http://skeptek.com/2010/08/31/heres-another-one-for-the-outsourcing-horror-story-collection/
Does anyone have any comments on outsourcing QA?
11 comments
I'm an US ex-pat living and working in a developing country, and I see this situation all the time. For the first couple years, I would lose my mind when it happened. Then I realized that it's not an intelligence or skill thing; it's a cultural and communication thing.
- A friend of mine here once hired a guy to paint his ceiling. The painter did a good job on the ceiling, but didn't put down tarps and got paint everywhere on the walls and floor. My friend was understandably angry, but the painter couldn't understand what the problem was. From the painter's point of view, my friend didn't specify that the floor and walls not get paint on them.
- I hired a crew to build an addition to our office. After they put in the floor, I realized that it was lumpy and misshapen. When I confronted them about it, they didn't consider it a problem. I didn't say the floor needed to be flat.
- I asked a smart, college-educated colleague to fix one of our broken clocks. She ended up just switching the clock with one of the working clocks. I had to go back and specify that all clocks need to work.
If you're going to outsource, you absolutely need someone who can bridge this gap. What feels half-ass and unacceptable under any circumstances to you and me, could just be normal and expected for a lot of people. And similarly, what feels normal and acceptable to us can feel obnoxiously strict and overbearing for others.
The trick is to understand that for any given situation, the meaning of "acceptable" varies from culture to culture. And it has nothing to do with skill or intelligence.
- A friend of mine here once hired a guy to paint his ceiling. The painter did a good job on the ceiling, but didn't put down tarps and got paint everywhere on the walls and floor. My friend was understandably angry, but the painter couldn't understand what the problem was. From the painter's point of view, my friend didn't specify that the floor and walls not get paint on them.
- I hired a crew to build an addition to our office. After they put in the floor, I realized that it was lumpy and misshapen. When I confronted them about it, they didn't consider it a problem. I didn't say the floor needed to be flat.
- I asked a smart, college-educated colleague to fix one of our broken clocks. She ended up just switching the clock with one of the working clocks. I had to go back and specify that all clocks need to work.
If you're going to outsource, you absolutely need someone who can bridge this gap. What feels half-ass and unacceptable under any circumstances to you and me, could just be normal and expected for a lot of people. And similarly, what feels normal and acceptable to us can feel obnoxiously strict and overbearing for others.
The trick is to understand that for any given situation, the meaning of "acceptable" varies from culture to culture. And it has nothing to do with skill or intelligence.
Hyung, are you in Vietnam? :)
Matthew/Chicago: Srini did you skip everything that was not working and just mark it passed?
Srinivasanu/India: Yes Matt
Overseas QA: Same results as domestic, now with 70% more honesty.
Srinivasanu/India: Yes Matt
Overseas QA: Same results as domestic, now with 70% more honesty.
I completely agree. You can find trusting people overseas... It all comes from building a relationship.
Granted, being 5,000 miles away (and not having face to face contact) can hamper that process, but there are plenty of trusting and responsible "outsourced" individuals that can handle quality control jobs.
Granted, being 5,000 miles away (and not having face to face contact) can hamper that process, but there are plenty of trusting and responsible "outsourced" individuals that can handle quality control jobs.
I am not sure that it is completely honest to label this as a horror story about 'outsourcing' per-se. I take it as a horror story about lack of skills, unprofessionalism, and mismanagement. After all, who picked the QA team?
Out of curiousity -- is 'UAW' United Auto Workers?
I would find it funny that they were outsourcing ANYTHING.
I would find it funny that they were outsourcing ANYTHING.
Sounded like a manufacturing system -- probably Ford/GM's call, not UAW's.
yes, 'UAW' are the United Auto Workers.
Used to work at a place that tried outsourcing QA. Truly awful idea. They started off by just trying to get them to document the process they would be using to QA. They failed.
I saw a lot of this at two of the web companies I worked in the mid-2000s. Outsourcing/offshoring was all the rage and it was tempting for a mid-sized web company to think, "you know, our processes are starting to break down now that releasing buggy code causes a lot more problems, but it's going to take months to build a QA team... let's offshore it!"
It's not trivial. If your software development process can be described as, "some business guy writes an e-mail with four sentences and a developer works with him to implement the feature" or "production and dev environments are never in sync, but devs double as sysadmins and have access to production so they just modify configuration as necessary," then offshoring/outsourcing QA is doomed to fail. You need things like detailed specs and a consistent QA environment. I had projects that took 4 days to develop but 2 months to QA because every "bug" was either a) actually an intended feature or b) some inconsistency with my dev and their QA environment. Throw in a time difference causing a 10 minute hallway conversation now taking 2 weeks over e-mail, and very often a language barrier, and there is no other possible outcome except for an unmitigated disaster.
It's not trivial. If your software development process can be described as, "some business guy writes an e-mail with four sentences and a developer works with him to implement the feature" or "production and dev environments are never in sync, but devs double as sysadmins and have access to production so they just modify configuration as necessary," then offshoring/outsourcing QA is doomed to fail. You need things like detailed specs and a consistent QA environment. I had projects that took 4 days to develop but 2 months to QA because every "bug" was either a) actually an intended feature or b) some inconsistency with my dev and their QA environment. Throw in a time difference causing a 10 minute hallway conversation now taking 2 weeks over e-mail, and very often a language barrier, and there is no other possible outcome except for an unmitigated disaster.
Personally, if I am presenting to clients, I always check everything I'm going to show beforehand - I run through what I'll be demo'ing and check that it works as expected. I'm not sure why Matt didn't do that, but there you go.
'Matt' doesn't sound like a very pleasant guy to work with, outsourcing aside.
rofl [edit: I've been there]
The fundamental is that you can't outsource skilled knowledge labour piecemeal. You either outsource everything, and provide a third party with a functional specification, timings, and the financial means to fulfil those two, or you are, as they say, fucked. If you attempt to outsource individual components of a project to multiple physical locations in disparate timezones, you'll inevitably have a communications disconnect, and shit will hit fans. Developers need to talk to users need to talk to QA need to talk to management. Keep the lines open and clear, and everything goes smooth as a greased-up polecat in a cement mixer. Fail to do so, and everything suffers.
In this scenario, it'd seem that the poor bastards in Uttar Pradesh or wherever-the-fuck don't have a clue as to what's going on. If they did, they'd probably do a halfway competent job. I've worked with QA teams in India and China in the past, and it's been an excellent experience - because we communicated with them non-stop. It would have been preferable to keep those elements on-site, however the parent company of the client we worked with were insistent that we utilise their resources - and because they managed them well, the arrangement was tenable.
Anyway. Don't blame the outsourcee - blame yourself for either making a shitty decision or mismanaging the resources you've acquired.
In this scenario, it'd seem that the poor bastards in Uttar Pradesh or wherever-the-fuck don't have a clue as to what's going on. If they did, they'd probably do a halfway competent job. I've worked with QA teams in India and China in the past, and it's been an excellent experience - because we communicated with them non-stop. It would have been preferable to keep those elements on-site, however the parent company of the client we worked with were insistent that we utilise their resources - and because they managed them well, the arrangement was tenable.
Anyway. Don't blame the outsourcee - blame yourself for either making a shitty decision or mismanaging the resources you've acquired.
I total agree with your assessment. Management sometimes believes that you can outsource software development and quality assurance without investing the time in documenting what it is you are sending out. They then wonder why things are missed.
Additionally what happens is that the person sending out the work is often stuck having to fix it due to a crunch in time, thus defeating the purpose of outsourcing. (At least in my experience)
Additionally what happens is that the person sending out the work is often stuck having to fix it due to a crunch in time, thus defeating the purpose of outsourcing. (At least in my experience)
Title is overgeneralizing. A lot depends on how teams and communication are set up.
I have had success in outsourcing QA. The key is to either have people onshore who can communicate with them over phones or someone offshore who is a good communicator and have him/her explain things in person.
>Matthew/Chicago: I think I’m in the Twilight Zone.
Can't 'Matt' fathom that his message might be confusing to a non-native speaker? Couldn't he have put it in plain words before just firing someone over IM in a rage?
There is a proper way to 'let go' of people even if you think they are morons. Maybe it was a show-off to the '20 very concerned UAW workers' in the room?
'Hey, looks like we failed at outsourcing properly, but I just fired the guy responsible for this mess. That should make it okay, right?'
I have had success in outsourcing QA. The key is to either have people onshore who can communicate with them over phones or someone offshore who is a good communicator and have him/her explain things in person.
>Matthew/Chicago: I think I’m in the Twilight Zone.
Can't 'Matt' fathom that his message might be confusing to a non-native speaker? Couldn't he have put it in plain words before just firing someone over IM in a rage?
There is a proper way to 'let go' of people even if you think they are morons. Maybe it was a show-off to the '20 very concerned UAW workers' in the room?
'Hey, looks like we failed at outsourcing properly, but I just fired the guy responsible for this mess. That should make it okay, right?'
After the guy admits that he simply ignored failed tests and marked the QA as passed, I think the time for kind and easy to understand communication is long past.
It looked to me like he just misunderstood the question. He shouldn't be answering "Yes" when he doesn't understand, of course, but I don't think he was admitting to fraud or dishonesty.
Did you miss how the conversation started? They were talking over the internet, and she wanted him to see if his internet connection was working.
Yes. That's one of the reasons I don't think this person had anything to do with defrauding the client by falsifying or skipping tests. They're not even smart (or English-literate) enough to lie about it.
The problem with outsourcing is always the fact that you get this idea of people with at least decent knowledge of X language and more times than not it blows up in everyones face when it just isn't the case. I don't care if he doesn't understand, if he has to deal with people speaking english/spanish/russian/whatever he HAS to have a decent grasp at the language (or he shouldn't be doing that line of work).
You're saying that this Matt person should have had a person that could be able to speak baby language to communicate effectively? He shouldn't have to do that at all. What's the point in outsourcing if you need people that speak baby language to communicate effectively? Matt took control of the situation and I think he was quite civil in firing that dude. I know more than one manager whom would have snapped big time at such stupidity.
Aside I've been in this same position with a three different development teams in India. Awful experience. I'm not saying there are no capable people in India, there are boatloads of great people in India, but sadly with 1.2 billion people your chances of stumbling into one of this awesome people are slimmer than Kate Moss.
If I get hired as a French speaking programmer, and I can't either speak French or program, I'm a total lier and will probably go out the door in flames when I get fired. I don't think outsourced teams should be exempted from this.
You're saying that this Matt person should have had a person that could be able to speak baby language to communicate effectively? He shouldn't have to do that at all. What's the point in outsourcing if you need people that speak baby language to communicate effectively? Matt took control of the situation and I think he was quite civil in firing that dude. I know more than one manager whom would have snapped big time at such stupidity.
Aside I've been in this same position with a three different development teams in India. Awful experience. I'm not saying there are no capable people in India, there are boatloads of great people in India, but sadly with 1.2 billion people your chances of stumbling into one of this awesome people are slimmer than Kate Moss.
If I get hired as a French speaking programmer, and I can't either speak French or program, I'm a total lier and will probably go out the door in flames when I get fired. I don't think outsourced teams should be exempted from this.