Ok. It isn't for everyone.
This is the MMORPG approach and it promotes homogeneity, in my experience. What actually happens is that you get a few optimized builds and everyone congregates towards them.
I would not know as I have never, once, played an MMORPG.
I think it would really depend on how it is developed, but I can easily imagine a few options for each role, as a specialty (so to say) for that role. For example, "Tanking" is done through either huge hit points and simply taking damage for others, or having great AC so you never get hit. Either method works to accomplish the main task of the role, however part of that role is also
stopping attackers from just ignoring you to attack someone else! So, being able to lock-down an opponent is also part of the role and would also have to be developed.
What is the point of being a "Sniper/Ranged Weapon support" role if you cannot effectively escape/evade foes who constantly move to melee you? Your role is to provide that ranged damage, but also to be mobile and elusive.
Some roles will naturally overlap to one degree or another, such as the sniper and scout roles. Those examples were just rattled off of the top of my head, and developing roles which are very distinct to prevent as much overlap as plausible would take real development.
I would have fewer classes but more subclasses.
Me, too, but subclasses would have to be more robust otherwise the homongeneity you dislike would run rampant IMO. Right now, class comprises 80% or so of a character's progression, with subclass being "defining" (in theory) but in many cases lackluster. With fewer classes and more subclasses, class would need to be regulated back to 50-60% (or lower!) and allow subclass to truly develop the rest in order to make the distinction stand out.