But don't we know that Kirk held at least three non-command posts in his time in Starfleet? We know he was an instructor at the Academy, that he served aboard the U.S.S. Republic, and that he served aboard the U.S.S. Farragut. And we know he wasn't the captain of either of those ships. In the former case because Kirk filed a report and it was dealt with by someone higher up, in the second because we know he was a young officer and his captain commended him.
Now, if we accept the sources that say that Kirk took command of the Enterprise at age 31 and graduated from the Academy at age 21, that's only ten years in between. I don't know how long military assignments typically are, but 10 years seems to me an awfully short time frame in which to be an instructor, then join the Farragut, then join the Republic, then get your first command, and then finish that command duty and get the Enterprise. Or am I wrong in that perception?