It also depends on what you're doing and whether you're genuinely good. If you have a chance to build something that you can point to to prove that yes, I really am good at what I do, then you'll have a much easier job convincing the next place to take you on.
So my advice is to make sure the first company you join is one where you can make big contributions right away. Kill yourself working that job. Don't worry too much about screwing up (you will in any case). Do it right and you'll be set on the right path for the rest of your career.
That too is valuable experience, of getting up to speed on sprawling codebases, which is a skill in its own right, and not one you get taught at college, and one you will need if you want to get involved in substantial projects later on. Negotiating corporate politics is valuable experience early on in your career as well.
There is a cost in switching too soon, and that is that you will be earmarked as a person who flits between jobs. 2-3 years at the first job is de rigeur IMHO. Yes you will learn an awful lot in your first year on the job, but you also have no perspective on how much there is. I remember in the dotcom days kids with 1 year of experience out of college would call themselves "senior software engineer". Good luck getting hired by a guy with 10 years experience!
My first job was at Epic Games working with Unreal Engine 2 which had a codebase of well over a million lines of C++ and UnrealScript. So, I agree with you of the value of learning your way around sprawling legacy codebases. But the company was still small back then (I think I was the 25th employee and the 10th programmer) and you could jump in at the deep end and quickly start getting things done. I've since worked at a massive company. I learned a lot from that, but it would have been frustrating had I gone there in my early career. That's the distinction I was trying to draw.
Getting red-flagged if you have too short stints at jobs is definitely a risk with taking Jason's advice. When I'm hiring people in the game industry, the most important clue in that respect is whether they stayed long enough to ship the projects they started, within reasonable limits. That usually works out to a 2-3 year minimum. That criterion isn't just meant to weed out job hoppers. The final six months of shipping a game are just qualitatively different (often in unpleasant but educational ways) from the rest of the development cycle. If you fucked up your design in the earlier stages, that is when your chickens come home to roost.
Does that change things at all?
Experience per unit time would really depend on the company, or if you're in a large company, the team you're working in. My last job was a medium sized company (~200) but my IT team was 7 people when all 5 of the interns came in. I got to do a ton of things that I probably wouldn't have done in a company with more bureaucracy, and that was at intern level.
Would you hire a guy with 1 year experience into a non-junior position? If not, then where is the advantage from jumping from one junior position to another?
You need to put in a few years of grinding at the beginning of your career to get yourself into a spot where you're probably good. If you jump around too early, you just have to start that grind all over again at the next place.