The most reliable place to find officers is the tavern. Keep going in and out until someone appears at a table.
You don't need any specific kind of officer to command another ship. I keep a couple of spare officers around just to sail prizes back to port.
I suggest finding a good gunner and a good navigator. It helps to have characters with high skills in some area where you're weak. If you do a lot of boardings, sometimes a tough will have high boarding and melee skills. A quartermaster or carpenter will help with defense and repair, and can get you better prices at the shipyard and merchants.
In the early parts of the game when I have few officers, I put my gunner on board a prize ship and hope that I don't need his gunnery skills before I get to port. After I sell the prize, I put him back in the officer list (in the passengers screen) so I get his gunnery skills back.
I suggest telling valuable officers to "sit out the next boarding." Also, equip the officers who will be accompanying you in town with good armor and swords, no guns (they end up shooting civilians), and give them a few health potions or bandages. My officers all get 5 bandages, 3 small health potions, one antidote and a few cauterization kits when they're available, and I check and replace them periodically as necessary. Items that enhance skills also work on your officers. This is a good place to use books, as you don't care if some random skill gets lowered as long as the strong ones are enhanced.
Hook