The best reasons to outsource software development are all tied to business requirements. The same reasons apply to startups and enterprises. Enterprises may be better equipped to hire their own in-house development teams. However, doing so isn’t always a wise investment.
Outsourcing is for big companies that care more about process (timecards being accurate) than the product detail. For example, governments, insurance companies, banks, etc. These companies are focused on the big picture, not where the buttons go on the UX, how fast the code runs or even how much it costs to run the code.
Many startups have stumbled upon outsource traps --they wind up breathing like a defeated Darth Vader, with "MVPs" developed offshore (not just India, all over Asia, Eastern Europe and South America) that don't even run (screenshots from "that time they ran for a while" and zip files of code), usually tethered to some awful and expensive AWS system that supports a few users (instead of tens of millions --with "elastic scalability"). There is usually almost no money left, (seed) investors are screaming at them, they are having emotional problems from the stress, there is nobody within arm's reach (though I heard of one guy once who actually flew as close to St. Petersburg as he could without entering Russia just to meet with the sales manager of the "team" that ripped him off and surprise attack him.) There are lots of reasons, generally code that was designed NOT to be maintainable by competing "teams", code that looks like a child wrote it and will never scale, code that is missing key components to compile, code that contains "heavy lifting" problems (floating stack corruption, null pointer dereferencing, leaks, etc.) It's hard to blame the line-programmers (excuse me, "developers" lol) either --they are small cogs in a big f'd up system. Startups here on YCombinator, steer clear of outsource traps!
3 comments
[ 5.9 ms ] story [ 23.0 ms ] threadMany startups have stumbled upon outsource traps --they wind up breathing like a defeated Darth Vader, with "MVPs" developed offshore (not just India, all over Asia, Eastern Europe and South America) that don't even run (screenshots from "that time they ran for a while" and zip files of code), usually tethered to some awful and expensive AWS system that supports a few users (instead of tens of millions --with "elastic scalability"). There is usually almost no money left, (seed) investors are screaming at them, they are having emotional problems from the stress, there is nobody within arm's reach (though I heard of one guy once who actually flew as close to St. Petersburg as he could without entering Russia just to meet with the sales manager of the "team" that ripped him off and surprise attack him.) There are lots of reasons, generally code that was designed NOT to be maintainable by competing "teams", code that looks like a child wrote it and will never scale, code that is missing key components to compile, code that contains "heavy lifting" problems (floating stack corruption, null pointer dereferencing, leaks, etc.) It's hard to blame the line-programmers (excuse me, "developers" lol) either --they are small cogs in a big f'd up system. Startups here on YCombinator, steer clear of outsource traps!