Outsourcing Jobs and Overtime Pay for Developers
The entire idea behind capitalism is that by giving businesses the freedom to develop as they will, a kind of darwinism will take place, weeding out the less able companies, leaving only the best companies with the best employees working for them. It seems that many Americans are upset with this idea, the idea of capitalism and would prefer that people from outside this country, whether or not they are more highly skilled than a similar American worker should not be eligible for the same job.
I am not the most elite in my field, and I am not a business partner or anything like that, but I do believe in capitalism. It regularly produces more agile companies that are stronger, and in the end that makes our economy stronger. At least for those Americans who have the opportunity to participate in the stock and real-esatate markets, which I leave for another discussion because access to education and opportunity is not universal. The bottom line is simply this. If you don't want for companies to hire workers from overseas, get better at what you do. Legislation is not going to stop companies from moving out of the country completely, and if there is too much legislation on hiring workers from overseas, and American workers are not suitably skilled, then why shouldn't they leave the US?
Legislating how business hire and pay employees is not going to solve the problem, and it also is not in the spirit of this country's basic values. I have been unable to find official work over the last couple of years, and my solution was to do some work for cheaper, bolster my portfolio, get better and then when the economy got better to get back in at a higher level. It goes back to the most simple concept of business. If you are seeing slimmer margins, add value and increase the price. The idea is to make the consumer belive they are getting more for their money. Convince businesses why they should pay you more, don't complain about the fact that they should pay you more for the same work. That won't happen. Add value to yourself.
As far as overtime is concerned. Overworking people does not make for better software development. You end up with poor unscalable code, shortcuts, and a lower quality product. It just doesn't make any sense to work like that. The best companies will expand their work forces, cut hours and focus on a quality product. The market will react by buying more from that company. Capitalism will win by showing that the company that focuses on good process management and fair compensation practices will make more money and be sustainable. The companies that stick to the bankrupt model of working employees 80 hours a week and not compensating them fairly and turning out buggy code will just go away.
Also, why should Americans have a monopoly on software development. Why can't other countries do it as well as we can. I would like to think that we have the ingenuity and intelligence to compete at a high level in the world, but if businesses feel that they need to hire outside the country, then this must not be the case. The best way to get out of the whole outsourcing issue is to stop limiting the number of H1-B visas. I still believe the terms should be controlled, as well as methods of gaining citizenship, but why bother to stop companies from hiring overseas workers. What better way to create new foreign capitalistic economies than to allow workers to gain American business values and return back to their countries to teach everyone else. Perhaps if American workers can add enough value to themselves, tech booms elsewhere will necessitate that American workers go outside the country to work, spreading capitalism and American values even further. What is wrong with that?
Being more closed isn't going to protect jobs, look at the textile, and steel industries. They were coddled until the workers just weren't as efficient as others and now those two industries are just gone. If American steel and textiles had been twice as good as every one else's perhaps things would have been different. Of course there would be fewer jobs, because some people want the cheapest thing they can get, regardless of quality, but those people and businesses that remained would enjoy high salaries and a great standard of living. I don't want American software development to go away, and I don't believe we can't compete. Apple knew they couldn't compete with Dell as far as making cheap computers, so they decided to write better software, create better peripherals, and design better looking hardware. It worked, Apple is growing. Developers need to go through the same process with themselves.
Much of the problem, I believe, is with those who came through the .com boom when people would work 80 – 100 hours a week, but were receiving unrealistic salaries for the work they did, just to keep them. That evironment is gone, perhaps forever. The whole industry needs to look at things as they are instead of as they were. The landscape is different now, there isn't as much demand, and there are still a lot of developers. That means that salaries will fall, that is normal, but it also means that it just won't be worth it for people to work crazy hours for less money. The concept is simple, I don't understand what part of it businesses don't understand. The ultimate effect will only be to drive tech workers into other lines of work, especially if they have families, and accelerate the outsourcing of work that could be done here.
Business needs to advance, and developers need to advance. In a world where darwinism rules, you need to be fit, for businesses that means offer a better working environment and the industry will stop hemmoraging workers to real-estate for example and keep that knowledge. The effect of this will be to reduce the need for outsourcing because there will be more workers here of varying skill levels.
American business also should look at helping schools in poor rural parts of the US churn out production quality developers and artists. The benefit to this would be to create a work force in places where the cost of living is lower, and so are the salaries. We can never match the cheapness of oursourcing, there are countries that just don't believe in human rights the way we do, but what we can do is get the price low enough for similar types of workers who perhaps only need $30,000 to live well and can do some tech work. It would be then worth the small extra cost to avoid the annoyance factor of people being not physically accessable.
I know many of my developer bretheren hate to see the commoditization of our industry, but the reality is that it had to happen. The only thing we can do is to get better or get out. That is just the American way, always has been.