I'm very much on the classes are inherently bad side.
They don't foster teamwork by forcing people to do different things. They reduce teamwork by limiting what players can access, not characters. Teamwork is when people combine their efforts, be it through forming mixed action groups, or by simply co-operating and working together. That could be done through all sorts of ways, such as split objectives, multiple routes, team-level assets, etcetera. You can do that regardless of classes.. Simply reward people for working together. Doing it through a ham-fisted method of soft and hard counters isn't as interesting.
Man, this is hard to explain...
Alright, so, there's this piece of gear, right? It's a fluffy dog, I'm serious, it's a doggy plush, anyway, when looked at through a scope or just seen from too close up, your character will just start staring at it, it's like a long range magazine, right? It's a great counter to snipers, but, if I remember correctly, it's not available to Scouts, who are the sniper class, because otherwise it would just be too powerful, place a doggy and anyone searching for you who sees it is immediately a easy target for you, so would you say that the doggy would be allowed to the Scout?
Or invisibility Camo, it temporarily makes you near-invisible, apart from a slight blur, it's only available to Infiltrators, who are the close-up sneaky stabby class, so should that be allowed for the scout, who could just straight up become nearly impossible to spot?
Hold on...
Hmmm, now I'm confused, I honestly can't tell if gear is restricted to certain classes.
Anyway, do you get what I mean? would you like the idea of a nearly invisibly sniper? Or a sniper that can't be shot back at by another sniper because they both have doggies around them?