Those are certainly valid points, but I can't help but feel like the OP is going down a slippery slope, and will soon start contracting out coding work to 3rd party, which would then comes back full of bugs and doesn't mesh nicely with existing architecture, thus requiring full-time maintenance from internal staffs anyway.