Outsourcing Winners and Losers
An anonymous reader writes "The New York Times has an article on the winners and losers of the outsourcing trend. It's a Q and A session with a distinguished panel of experts on the topic, including Professor M. Eric Johnson, who says that, 'Low-skill jobs like coding are moving offshore and what's left in their place are more advanced project management jobs.' Now I know coders aren't rocket scientists, but less advanced than project managers? Ouch."
My hospital uses Russian programmers. The entire job of OUR coders is to learn and debug the Russian code...
Talking to them it seems that the majority of their time is really spent rewriting the code in a more readable, more secure format. However, they don't have the time or manpower to do it all.
Therefore, more bugs get in the final product...
What an odd system... especially in a hospital were errors can mean lives.
davak
As a coder turned project manager I fell that my current position is harder then my old coding job. The demands are higher the blame falls entirely on me and the worst part of all, I have to deal directly with the customers. As a coder I could work on things in small pieces and just meet the requirments, as the manager/designer I have to know how those pieces will go together and recognize the obstacles before hand. Really for the little extra pay I get for the new job I'd go back to being a coder if it wasn't for the lack of job security.
I know I could outsource my coders, but that's mostly due to the design being complete enough that anyone can just sit back and code up exactly to spec. It's not hard to code when given "you need a box that takes in X out puts Y and here's how you convert X to Y". I would guess that you couldn't outsource a design of " We need something that does Z. I suppose my job could be outsourced but I already find dealing with the customers over the phone in the specification gathering stage quite difficult. I happen to know their markets quite well and that tends to be how I get through. If I didn't understand the market then I'd be screwed. So yeah someone that knows the market including all of the little local issues(taxes, strange holidays, legal issues...) could do my job from just about anywhere in the world, It's over the phone anyways. Someone that doesn't know of the little things couldn't do it.
When I looked into outsourcing our coding I decided not to.
Reasons include
- my programmers are already paid slightly below national average and the cost savings wouldn't be huge.
- My programmers are proven known pieces in the puzzle. I know which guy does what best and I can pretty accurately estimate delivery schedules based on that.
- I like working with my guys, they help out a lot when I do design or come up with ideas on things we may want to try.
- shipping jobs away from here doesn't help me or anyone else enough to be worth pissing the locals off.
- If I screw over my workers by shipping their jobs away, who will be their to back me when the owner decides someone else can do mine.
In hindsight my comment deserved a big F-you...
:)
Note my question marks in my original post as I didn't mean this to be taken as a truth.
I would be ashamed if any of my former teachers saw my comment... or my spelling...
Teachers rock ass and do not get paid for it. Teachers and programmers share the quality that they are underpaid for their work.
My comment was a reflex at somebody in academia making judgements without any experience.
I am sad that my comment has brought out the anti-teacher shmucks.
Davak
Coding: People here are complaining that coding is classified as a "low-level" job. A lot of companies have been treating coding as a low-grade skill for quite some time. A team of high-level people design the thing, and they hand it off to the lowest-paid workers that can actually implement it. These low-level American jobs purposefully don't leave much room for creativity, and the pay is not really that great. Outsourcing those jobs to India is merely a continuation of this trend and follows the manufacturing sector where the jobs of feeding the machines and putting stuff in boxes have mostly gone to China.
Management: A lot of /.-ers are complaining about how management sucks and how its so much easier than programming. This is false. Management is really hard and takes a lot of skill. Most mangers suck, of course, but most programmers suck, too. You never notice the rare good manager who takes mediocre programmers and makes a successful project, but a bad can have great programmers and get nothing done (of course, of you have genuinely bad programmers, you're screwed no matter what). The Indian industry will mature, and a lot of management and design jobs will eventually be outsourced there, too.
Quality: Think about any physical thing you buy. It probably has "acceptable" quality and doesn't cost very much. After a while, you get a different one, which probably has newer and better technology that you wanted anyway. (If everything you bought was a minor masterpiece, you'd pay for it by having out-of-date technology; it's the price of our fast-changing world.) If you want better quality, you have to pay a lot more, and the product, or large portions of it, are much more likely to be made in the US/Canada or Europe. Sure software quality sucks, but mostly it does what people want and is cheap. A lot of people are willing to put up with problems to pay less. In the end, the top software jobs will stay, just like the top manufacturing jobs are still here.
One problem really is that we don't know how to design software in a predictable way. Attempts to design inexpensive software are often more expensive in the end, and trying to do a great job can lead to bloated projects that are never done. Many expensive American projects really suck, and probably some cheap Indian projects are great. The field currently just doesn't have the maturity for us to say with any predictability "if we spend X dollars we will get Y quality." When/if the field reaches the predictability of manufacturing cheap software will be made in developing countries, and great software will be made in mature countries.
Protectionism: While short-term measures can allow an industry to restructure itself and become more efficient, long-term protectionism never works. Consider the recent steel tariffs. I'm not qualified to say if they were the right thing, but the idea was to allow some short-term period for the steel industry to get it together because we all benefit from a competitive industry. A long-term tariff, however, makes American products made from steel products more expensive. American consumers could then buy less, and American products can not be sold overseas.
The same is true for software. India currently specializes in grunt-work coding. Protectionist measures will save some American grunt-coding jobs in the short-term. However, what will happen in 10 years? A fraction of those Indians will get mad skillz. Indian software companies, now with competitive-quality coders, and benefiting from cheaper labor than their American counterparts, will clean up. The American industry will ultimately suffer. Its better for the bad American coders to find a different field or get better skills now than later. Think about it, it may suck to lose your job now, but its worse to lose your job from a dying industry when you're 10 years from retirement and have no recent skills or training.
I think a lot of this comes from "management" getting tired of "artisans" refusing to ship products on a schedule
My company was a small American firm who put out an embedded system that was considered by all to be the gold standard of our industry. Then we got bought out (because the founder retired) by a huge multinational German company.
Two years later we were trying to figure out why the Germans were pissed at us. No matter what we did we were treated like dirt. We increased marketshare and they were mad. We win a prestigious international award and they were mad. We couldn't figure it out. We gave them golden eggs and they acted like we gave them goose shit. We made one BILLION euros last year on a product and they laid off half our developers and outsourced their work to India in retaliation. They even flew out corporate "brass" just to *yell* at our software managers. Seriously! We heard the yelling from the other side of the wall.
Finally a German insider told us what was wrong. We never made our deadlines. We had always worked this way. We would estimate a ship date three years in advance, before we ever came up with requirements or specifications. So we would often miss the target by a few weeks. This was anathema to the Germans! It was intolerable. We were considered incompetent bungling fools because the one major product during that two year period was two weeks late to beta testing. Not to ship date, which we made, but to beta testing!
In one incident, I myself was seriously ill and was hospitalized. When I came back to work I found a waiting email message demanding to know why I was late on my project.
Don't blame me, I didn't vote for either of them!