Yes, but the US Navy (and by extension Starfleet) has a lot more ranks. Kirk would, upon graduation from the Academy, have to progress from Ensign, through the two Lieutenant grades, to Lieutenant Commander, Commander, and *then* to full Captain. So logically speaking it should take longer for Kirk to make Captain than it would in your example, wouldn't it?
That's only true if Starfleet both requires people to progress through all the ranks and requires that they spend several years in each of those ranks. If either of these is not true, then it does not follow.
Should Starfleet have such requirements?
Yes, I think they should. Why do you suppose those ranks are there, if not to be used?
This is not to say that every officer should spend the same amount of *time* in grade. Everyone is different. Some people get promoted faster, it's a fact of life. If Kirk goes up through the chain of command quickly, and makes Captain in only 8 or so years, that's not so bad. We all knew he'd do that anyway.
But to *skip over* ranks? That does not, IMHO, make any kind of sense. Those ranks are there to be used. If Starfleet must do, they can let Kirk spend a relatively short time as an Ensign, Lieutenant JG, etc. But he should still have those ranks, even if only for a few months to a year each. I mean, don't we all agree that it would be completely ludicrous for Kirk to go straight to Captain from Cadet?
I also realize that Kirk could have the position of Captain but have a lower rank, such as Lt. Commander or Commander. When he got his first command, he may well have done. But there's no indication that this would have to be the
Enterprise.