From what i have seen, the same software (say a messenger) will take much longer for a big company for the simple reason that much more has to be done to ship software, it is not done when the features are done and tested. Some of the things that small company folks never even think about:
- Clustering support
- Security reviews
- Windows Logo compliance (client and server if you have both)
- Legalese and trademark stuff. Oh, you are shipping a sample/demo code called "CatDemo"?? Legal wont approve, so go change all your samples and tests which use it to call it "DogDemo".
- Localization support, Does your software support turkish?
- Playing well with other products that the company ships. Oh, you mean you do not have an integration story with Office??
- Branding and ship vehicles. You are too small, so we will ship you with ProductLarge, so now lets make sure that we have an setup integration story with ProductLarge
- Run the million code analysis tools and do a superficial supress of all the crappy warnings that it generates? We dont trust your tests/perf tests to do a good job, we will warn you that you have a performance problem if you do a string catenation
- And btw, the next version of OS is shipping while you do this, so please make sure that you run on that too...
- and on and on ....
So net effect is that if you 100 hours of usual software work, you have around 200 or more hours of process work. Depending on competency of the folks who run the project, these things will be on radar right from start or turn up as surprises right at the end => more slips and chaos at the end.
This makes it frustrating for a developer at times, but the upside is that you get to work on stuff which small companies can never do [Database, OS, Servers, CLR etc] and have a corresponding larger reach .