Is there a way to prioritize a tactical officer over say a fighter pilot using automated assignment? A tactical officer on a combat ship is always better than a fighter pilot in my opinion, but they frequently get assigned badly.
No.
Steve's post (from the 1.10 changelog, updated sometime after 1.12): http://aurora2.pentarch.org/index.php?topic=8495.msg104046#msg104046
The tl;dr is that co positions, regardless of ship priority, always fill from both unassigned commanders and commanders in non-co positions.
I figured. Make me not want to build fighters. I have a 40 level academy and I still don't get enough Tac officers and I only have maybe 100 fighters and maybe four dozen ships with a CIC.
It can help to check the Senior C.O. box in the class design window, which will make the minimum rank for a junior officer one above the minimum. This means your fighters remain commanded only by the lowest level of commanders and hopefully minimizes any overloading of a particular commander rank.
Of course then you have to be careful not to run out of commanding officers, since Tactical Officers have to be two ranks lower than their commanding officer so if you have four dozen ships with a CIC you need ~48 Rank-4 officers (CDREs in the UK system) which requires you to have something like 400 Rank-1 officers (LCDRs) if you use auto-promotions. With a level-40 academy producing 200 officers a year this is doable though.
I usually end up finding that the junior officers modules need to be used conservatively or I run out of officers at some rank. Even if all I use are AUX modules, it's easy to run out of XOs if I put them on every large ship class.
The way I solve it is by adding a new rank at the bottom "Lieutenant" (LT) and using senior CO on all ships that have things like CIC etc.
What happens is that fighters and commercial ships (without commercial JDs) use the LT rank, senior CO ends up putting the CO as Captain which means that the CIC and ENG modules are manned by LCDRs.
In fact, in my games LCDRs are almost exclusively bridge officers and never COs onboard military ships and it works quite well. The lowest commanding rank ends up being "Commander" for frigates that don't have bridge crews.
It works less well if you add jump drives to your commercial ships, as this pushes their rank requirement up to LCDR, making commercial ships scoop up LCDRs. It's still a massive improvement though because your 1000+ fighters / orbital PPV platforms will still use LTs, which massively reduces the burden on LCDRs.
The most obvious disadvantage is that you are halving the officer pool for capital military ships by adding the lower rank, but not only has this never seemed to materialize as a problem for me, I usually use all the LTs on fighter sized crafts anyways so the extra rank is not a waste.