If you put 500 hosts on the same subnet you will greatly reduce the efficiency of your network. If all machines are in the same broadcast domain, then every broadcast packet must be sent to every host. Not a very efficient way to set up your network.
But that doesn't mean that the subnetting that has been done has necessarily been accomplished efficiently. I would guess, though, by your description, that a bit of thought was put into the architecture.
Generally you will subnet geographically, like by floor, or by building, maintaining the majority of your traffic in a single geographical location. That way, the only traffic that is routed is traffic that needs to go across a WAN or Backbone to get to another geographic area.
Don't think of internal routing as a bad thing. It generally only adds a small amount of delay (in the neighborhood of 7ms). And because every machine in the network is not having to filter ARP gateway requests for all 500 machines, each machine is doing less work.
BTW, you were not "assigned" a 10.x.x.x address block. That address block is part of the RFC 1918 Private Network Address pool that anyone can use freely. It cannot be routed across the Internet.
With an address block of that size, using a Class C netmask is not uncommon. If you are running out of address space (you aren't), or creating small WAN or transmission networks, it is not uncommon to migrate to addressing that is completely classless, like CIDR. You could specify your current netmasks as CIDR addresses by using /24 if you really want to go that route. CIDR doesn't really buy you anything, it is just a newer netmask convention that specifies the number of bits in the network portion of the address. For every CIDR network size, there is an equivalent netmask. A /30 CIDR address is the same as a 255.255.255.252. A /29 CIDR address is the same as a 255.255.255.248.
pansophic