Tuesday, August 5, 2008

2 ways to discredit yourself as a software developer

A friend shared a couple of sure-fire ways to deep six your career at some companies.
  1. Openly, frequently, and clearly state that you believe that UFOs frequently visit the earth and that aliens live among us.
  2. Global outsourcing really does not work all that well.
Point number 1: I'm cool with that. With the exception of my former roommate Michael I can't say that there are many people who have taken that position that I respect.
Point number 2: Sad, but true. It's a touchy topic. Global outsourcing is the new key to success. Wall Street is rewarding companies that have a certain percentage of their workforce overseas.
What do a bunch of investors know about running a company? Hard to say, seems that their prevailing wisdom changes from week to week. My friend Dale once said that stock prices are just a bunch of MBAs second guessing each other. To an extent, I agree. Perception drives the reality of a stock price, and investors contribute towards shaping popular perception of companies.
Regardless of the wisdom of outsourcing to improve the valuation of a company, it is clear that all companies are at least considering leveraging offshore resources to augment their workforce. I'm going to focus on IT, but there are lots of areas where this happens.
IT is the unlucky schlep in the company that gets hit the worst with offshore resources. It's such a tasty ripe budget that looks so delicious to cut. I can see those CIOs thinking to themselves: think how smart I'll look when I replace a bunch of $200,000 a year software engineering contractors with offshore contractors who will work for less than $50,000. I can hire them at 4 to 1 without growing the budget. I can't lose.
I think the temptation to shrink the budget and the apparant, albeit shrinking, disparity between the cost of living between the US and other parts of the world make global outsourcing too tempting an intiative for companies not to try. When the boss says that outsourcing is the way to go, nothing is going to deter him from that decision. If you appear contrarian, the people who decide how pleasant your future will be at the company, may see you as not a team player and decide to crank the fun level for you down a few notches. Why are they so touchy? Well, I think many of them have goals of replacing most of the domestic resources with cheaper offshore resources.
Consider the manager's situation. How do you tell the people under you that you want to send their jobs to a cheaper bidder in another country? This is tough, the workforce has emotional attachments and may, rightfully, feel that their job security is being threatened. The managers will try to soften the impact with misdirection and half truths. They will assure the work force that they are valued and the company expects to need them for years to come.
If they are intent on replacing the stateside workers, it is very important that the stateside workers stay as long as possible. The goal would be best achieved if the stateside workers would participate in training their replacement, um new global partners, until the company is ready to reassign/terminate the stateside employee.
Getting your employees to willfully and knowingly participate while not quit/sabotage your effort to get rid of them is, a very difficult maneuver. I have yet to see this executed well. Every time I've seen it happen there has either been blatant misinformation or a lack of information, neither tactic did much for the relationship between the managers and those whom they manage.
The question that people neglect to ask when they see this wonderful juicy plum of a fruit is whether global outsourcing can work. I think it can, but here's the thing, it won't work the way that companies want it to work. I'm not going to go into details of why, but for the sake of this essay, let's establish the premise that IT development jobs are not easily transferrable from one region of the world to another without realizing significan losses in efficiency by the person filling the position, or those who work with that person. For example, a software developer who can meet face to face with her customer, tester, teammates, and project manager is very likely to be more efficient at delivering the solutions that the customer wants, on the schedule that the PM establishes, with fewer defects. Being in physical proximity with the stake holders of a project increases empathy for the other parties.
The big equation that the people trying to make outsourcing work is how to reduce the inefficiency that distributing a workforce around the globe such that the reduced value or prolonged time in delivering the value is significanltly small enough to justify the cost savings. Is the lesser product worth the reduction in cost?
We make these kinds of decisions all the time in our lives, I was tired of shelling out close to $200 a month for my Comcast triple play, I switched to DirecTv for my television service and saved close to $20 a month for similar programming. The trade off is I have dish on a pole in my back yard, the picture goes out during heavy storms, there are more wires going through the house, and I don't get the same on demand features that I had with Comcast. Considering the amount of television we watch, the trade off was worth it. To put the trade off in perspective with outsourcing, I'd say that going from a local development team that knows the business to an offshore team, you're looking at going from a FIOS home theater to rabbit ears on one of those TVs that you need to hit on its side every once in a while to adjust the picture.
My suggestion to people considering implementing an outsourcing strategy is to look for jobs that don't need to exist onsite. Any job where the workers look bored all the time, is a great candidate. The people who are bored may be the least costly employees, but the cost to provide them benefits is a much higher portion of their total compensation. People who are bored at work are people whose jobs are not demanding, those are the easiest jobs to ship to somewhere else. The people who answer phones, they're usually bored, why pay someone $10 an hour to do it, when you can pay someone $20 a week to do the same thing?
Finally, before sending all work overseas, it is important that people question what the motivation to do this is. Is it purely for reducing cost? Consider the effect on the value and the trade off that making decisions purely on cost have. Competing on cost is never a good long term strategy, it's a race to the bottom.
It's value that people want, the cost is what they are willing to pay for it.

No comments: