Well the name of the rank doesn't much matter. The problem persists. I don't use "Commander" as a rank, at all. That doesn't change the fact that adding a CIC skips an entire rank, which just doesn't make much sense. I don't see why I couldn't have a Captain commanding a ship with a Commander as a tac officer.
For the purpose of this, there's three ranks that "matter" regardless of their name. Rank 0, 1 and 2, with 0 being the lowest, where all your new officers end up.
Rank 0 commands Fighters, Commercial Ships and ALL shipboard positions (Science, Engineering, Tactical, Air Group, XO)
Rank 1 commands warships without a CIC or other command and control components.
Rank 2 commands warships WITH command and control components
If I build all my armed warships with CICs (which makes sense in my opinion, it's a warship!) that basically renders Rank 1 completely useless, as there is nothing that needs them as commanders. I can "downgrade" them, as in: put them in positions for rank 0's, but that isn't the point. It means I need a lot more higher ranked people and inevitably produces a shortage of commanders.
I'm pretty sure you're wrong and rank 1 (which you're calling zero for some reason) only commands CIC and Engineering.
I use the same system Jorgen does and my science officers and xos are only one rank below the commander, not 2