I work in the IT department of a very large organization. I’m a software architect figuring out how to convert complex client-server applications to the web. Our team is doing a pretty good job of matching client-server functionality and performance with web versions. It takes a lot of technical expertise with technologies like Javascript, CSS style sheets and C# to match client-server functionality. We are succeeding in that effort.

But our organization has chosen to out-source 80% of our development to an off-shore organization. Their developers may work for pennies on the dollar, but few of them have the expertise of experienced US developers. The off-shore people need specifications that cost more to create than it would cost to have an experienced US developer just do it. The solution is to have on-shore people from the off-shore organization on site to understand the business and create the specifications.

This model is working reasonably well. The key is to have on-shore manage off-shore, and review every line of code that comes back.

What does that mean for IT professionals?  My advice: figure out what can’t be out-sourced to a bunch of know-nothing coders and move where they can’t  operate.