Everybody is arguing about limiting number of snipers. Yeah, I can feel that sometimes there are just too many snipers on certain maps and that makes other classes basically unplayable. My suggestion is that we should consider overall diversity. Any class in excess is making other classes unplayable on certain maps and in certain situations. So maybe we should do just one simple thing and limit any class to 2 within the single squad? Why would we need 5 medics, 5 supports, 5 assaults, 5 recons or 5 pilots/drivers in every squad? On CQC maps it would be 2 assault / 2 support / 1 medic probably as optimal loadout. On large snipingfest maps like 2 recons / 2 supports / 1 medic probably. It does not cure the cancer completely, but we can actually predict the maximum amount of any class in the game.
For example 64 player map has 6 full squads per side + one squad with 2 players. So maximum amount of any class is 12+2 = 14. 14 of anything per side is pretty damn lot anyway (nearly half of the team), but you would not have like 20 snipers per side.