When designing a map keep those in mind.
* The map will have fps issues, a potential cause could be a leak. To spot a leak compile the map, go to the "map" tab in hammer and press load pointfile. If you see a red line, you got a leak 100%, if nothing happens and instead a small window opens then you're alright.
*When you're building complex geometry like the ship you got there, select all of it ( not including props, logic, triggers etc ) and press control+T to func_detail it. That tells the program that it's only detailing and it doesnt block any sightlines ( that's for optimization ).
With func_detail the map will be compiled a lot faster, right now the map could be talking 10+ minutes to compile owing to the complex geometry but with this, you could save some time. Be careful where and when you use it again. Leaks could occur from that or other optimization problems.
*Finally use the grid properly. A mistake that I used to make was to work with really low or really high grid numbers. So my map would either look really blocky, or it would look fine but the map would be off grid. You cant work with 1x1 grid size in hammer. That's a nightmare. I had to sit down and fix the grid of the map afterwards when I learned it which took a lot of time. I suggest working with 32x32 / 64x64 / 128x128 when you are working. Those numbers should help you design better maps as well as let you make changes easier as time passes by.