Do any of you have any experience with outsourcing development to, say, India? What kind of tasks are good for outsourcing? I have heard very mixed reports from the few people who were willing/able to shed some light on this subject. Some told me that only rather superficial work is suited for outsourcing - like, generic web development tasks with PHP/JavaScript, some C# GUIs which run on top of databases to manage customers and such. The general sentiment I got was that more specialised tasks (in particular with embedded systems) are generally less suited for outsourcing. For example, does it make sense to outsource low level development like writing drivers in C?
I would imagine that complicated code which will be subject to a lot of maintenance is less suited for outsourcing since you usually want the original authors to work on it and getting new people in on it takes more time. You probably don't want to depend on a very specific group of people you outsourced a task to anyways since it's usually more of a short term solution, right?
Any input on the subject?