Although, there is so much specific roles, Heroes of the Storm only have 4 main roles, which this roles have another ones (sub roles):
- Assassin: Heroes that deal a lot of damage, specifically for killing enemy heroes.
- Ganker: Heroes that have skills for start a fight, killing their objetive and then escape faster, without being caught.
More or less, all the stealth heroes or heroes with enough burst damage to kill you with only a combo.
Examples: Nova, Zeratul, Valeera, Alarak, Samuro. Illidan is also ganker, but their main role is annoying enemy heroes, absorb the damage with his W skill, and doing camps easily.
- Mages: Heroes with range skills that do damage with poking enemy heroes. Their primary role is doing damage to all enemy heroes, usually more than 2. In most of the case, mages don't usually auto-attack, they prefer to stay behind the ally lines for getting their skills cooldown.
Examples: Kaelthas, Li-Ming, Gul'Dan, Jaina, Chromie.
- Marskman: Heroes which his primary role is killing enemy heroes with their auto-attack. They have a lot of dmg also with skills and talents it is enough for killing the enemy team.
Examples: Raynor, Tychus, Valla, Lunara, Zul'Jin.
- Warrior: This role englobe heroes with have a lot of health points and their primary role is to hold on the ally line, support their marskman/mage heroes and fight versus the enemy tanks.
- Tank: As the sub-roles name, heroes with tank the enemy skills and auto-attack, annoying marskman/mage heroes and have some utility to pick enemy heroes and moving in to the ally lines.
Examples: Artanis, Stiches, Leoric, Rexxar, Tyrael, Johanna, Muradin, ETC, Varian.
- Bruiser: Heroes with hold the line together with the tanks. They have some damage to kill enemy heroes with the assassin help. Also, they support ally asssassin heroes in the case an enemy assassin heroe appear to kill ally heroes. They have utility to do CC skills (Crowd Control: stuns, silence, root).
Examples: Sonya, Varian, Artanis, Arthas.
- Specialist: Heroes with their primary role are destroying enemy keep and forts. They have talents and skill for upgrading ally minions, having control map to move faster for destroying forts or soaking (getting experience by killing minions). In this role, they are heroes that have more utility by helping ally heroes than destroying forts, such as Medivh or specialist heroes that can be perfectly assassin heroes such as Sondius or Azmodan.
- Siege: As I mention before, heroes that their primary role is killing forts and getting experience, also they can helping heroes with their skills.
Examples: Zagara, Nazeebo, Gazlowe, Xul, Sgt.Hammer, Sylvanas.
- Utility: Heroes that have unique skills and also an unique playstyle. These heroes are different of all. They can work as siege or support, depend on the player playstyle and talents.
Examples: Murky, Abathur, Lost Vikings, Medivh.
- Support: Heroes that help you directly either healing you or shielding you.
- Heal: Heroes that heal you. Simple enough. There are variety of heroes by their healing, such as passive healing, sustained healing, burst healing or algo "free healing" (like Lucio that doesn't spend mana to heal, or Auriel that only need energy, and she get energy by auto-attackign or trait).
Examples: Burst heal: Uther, Rehgar. Sustain heal: Tte. Morales. Passive heal: Brightwing. "Free heal": Lucio, Auriel. Tyrande can perfectly work as a Healer (one of the lowest healing heroe), Support (by her trait) or as a Assassin (by her talents).
- Support: Heroes that help ally heroes by usually shield or vision.
Examples: Medivh, Tassadar.
The sub-roles can be different by the ammount of damage and how they do the damage instead of type of damage. Such as: Ambusher, Sustained damage or Burst damage. Info of this sub-roles here: https://www.hotslogs.com/Info/HeroSubRole
EDIT: Adding Support role and sub-roles, also more examples.