Why Offshoring Won’t Work (at least not for everyone)

I’ve been involved in a big development project since the beginning of the year. It’s been, as they say, a process.
My client, a local non-profit, and I are about 2/3 of the way through Phase I, which has involved designing a database and developing a web-based data-entry application. The other major phase, where the rubber meets the road, will be reporting.


This project has had more than its share of fits and starts. And, appropos of the title of this post, there is NO WAY it could have been offshored.
In order to use resources overseas, you have to have a pretty damned perfect spec at the outset, something that in my experience just doesn’t happen with small or mid-sized companies.
Oftentimes, procedures have a life of their own, and it takes time and patience to dig out the reality versus the theory of how a business process actually works.
In other words, there are surprises, always, and the client is left telling you as the developer that they’re very sorry, but something needs to be rewritten.
As I said, this ALWAYS happens.
That’s the main reason I don’t write my code using wizards or the way MSFT prescribes it. I’ve learned through the years to structure my code in a way that I as the developer have complete control over what is going on – because change ALWAYS happens.
In this case, the application is pretty complex, and it needs to comply with Federal regulations. My client is new to this, so on top of dealing with the “how it really gets done”, my client has needed to learn and interpret a lot of Federal Register-type detail.
We started out with all kinds of grand ideas about the resources available to our User community. The project changed drastically when we faced the reality of limited time, limited software licenses, and limited money.
All of this is to say that putting together a spec that would have worked for a bunch of coders half a world away was impossible, as I suspect it is for a lot of projects that are run by people as opposed to “corporations”.
As long as we have people needing to automate work, there will be a place for local programmers.
At least I hope so.