I still believe that for recent graduates looking to begin their career, there is no better option than to join an early-stage startup. Admittedly, it's like buying a lottery ticket, but if you win you can win very big and give your career a massive boost. On the other hand, if you lose you have still gained valuable career experience equal to or greater than what you could have gained at "GiantCorp". More importantly, early stage startups offer employees a broad but shallow understanding of businesses, versus GiantCorp's narrow but deep understanding. This is important for young employees who may not be 100% sure what they would like to specialize in yet.
Why is the career experience more valuable than that you'd get at a big company?
If we're taking about developers here, then the experience a recent graduate needs is how to become a better, more capable developer.
In a big company, they'll have multiple senior colleagues, established processes, numerous large and varied codebases to study, and a large body of institutional experience to learn from.
In a startup, they'll have what? A frazzled technical founder with little more experience than them and no time for them, a few equally inexperienced colleagues, and a crummy Rails codebase.
You're absolutely correct, but the main benefit of working in a startup, from my personal experience, is you have your hands in the product from end-to-end, and have to wear many hats in the process of getting the product to market, and probably even have discussions and input on both design and business decisions going into the product.
You will probably not get significantly better at process and architecture design in a startup, but you will learn how to get the damn thing to work no matter what, at every stage of the process, instead of being responsible for one little feature here and there and working on tech that is likely 5-10 years old and in maintenance, bug-fixing mode.
I think working in both environments is valuable, as you probably won't see the value of unit testing, code reviews, continuous integration, and senior mentors in a startup environment, but being able to see the entire lifecycle gives you a perspective that other programmers that stay with big companies aren't as likely to see as well.
Also, I've worked in corporate environments with much worse development practices than startups, as well, mainly companies where software is not their main business. It goes both ways.