In my limited experience, it takes up to 3 years to go from the start of a project to it being in a maintenance state. A lot of developers (consultants, self-employed, etc) have jumped ship before that, often around the two year mark.
So there's two - three years of work, it's 90% done, it's nearly ready to go into production... then what? Who does the actual work? Who does the maintenance?
I think anyone that picks a technology stack and architecture should stay long enough at a company working on it until they fully understand the consequences of their decisions. Too many people jump from one hype technology to the next, one greenfield start of a project to the other, but never have to deal with their own code and decisions ten years down the line.
And you KNOW a lot of software has a lifetime of at least a decade, sometimes / often more. There's critical systems that are still running with the decisions of a previous generation of developers, people who are now being asked to come back from retirement to maintain their old systems.
You can't call yourself a senior (or serious) developer if you've never had to deal with the consequences of your own actions.