You might be able to write excellent code, but experience brings many other skills:
- How to design code that's easy to use, test, understand, and maintain over the long term.
- How to effectively debug the hardest problems: bugs that occur intermittently, concurrency issues, performance issues, hardware issues, etc.
- How to wade into a huge code base and understand what it's doing, especially when the people who wrote it are no longer around to answer questions.
- How to decide which third-party software is likely to be well-supported a couple of years from now, or whether it's more cost-effective to write certain functionality yourself or use an existing solution.
- How to work effectively with others: difficult co-workers, customer support, product management, your manager, upper management.
A lot of this stuff is learned by making lots of mistakes over time. If you're just starting out, you haven't made enough mistakes yet to have learned the hard lessons.