Typically, when players first join civ servers, they are placed at a random location on the map. This behavior is managed by the RandomSpawn plugin (source).
New players spawn on the highest block of their randomly chosen spawn location. This often leads to players being spawned on top of buildings. Certain blocks, such as water, obsidian, and carpet, are blacklisted and players will not spawn on them. This is to prevent new players from spawning in the middle of an ocean or defensive infrastructure like a Vault.
Admins may also set spawn points in the world, typically around existing cities or nations. When a new player spawns, a spawn point which has another player already logged in within a certain radius of it is chosen at random. If no such spawn point exists, the new player is spawned completely randomly in the world.