Couple of advices:
Pick according to your team composition, if you’re 4th 5th you should pick what the team needs (supp, tank if necesarry).
Try building a hero roster to cover all roles with good picks. Use sites like Hots Logs to see the winrates, and Heroes counters for the counter picks. Learning the counters to the most popular heroes is crucial to your success.
Learn which heroes are good on which map and use this to your advantage (Cursed hollow - Brightwing; Haunted mines - Sylvanas, Azmodan, Tassadar; Blackhearts Bay - Rehgar, Illidan)
Think, think and once more think in hero select. Learn the counters and speculate about team comps. If the enemy team is picking Rehgar and Abathur, try locking out Illidan. If they first picked a support there’s no need of picking one for your team in the next 4 picks- use that to get better heroes in other roles (tank, specialist, assasin etc.). If you see them building a splitpush teamcomp with f.e. Azmodan and Brightwing, counter it with a strong wave clear (Jaina, Kael Thas). If they have a heavy engage assasin composition, pick Uther for his boubble and prevent them from assasinating carries. Also keep in mind that combos with Illidan and Rehgar/ Uther usually are about timing the supports ult correctly, don’t use them earlier without a good cause.
Counter heroes, and execute the counters. Enemy has abathur? No problemo, bam nova on the hunt. Etc? What will your mosh pit do about my Spikes and Burrow as Anub Arak. There’s an Illidan in the enemy team? I guess that 50% slow on attack speed on Muradin will help my team. Be consequent though, picking Nova or Zeratul into Abathur as a counter has no impact on the game unless you force him to back behind keep walls and prevent him from getting additional XP.
Choose your talents smart. Burining rage vs. zagara is free creep tumour clear. Imposing pressence (50% attack speed slow) on any tank helps you staying alive vs auto attack Valla or Illidan. Clairvoyance on Uther can be used to detect Zeratul or Nova pre- teamfight and catch them off guard. A good cleanse on the other hand can help your Illidan/ Kerrigan get rid of enemy carry. Stormshield on E.T.C. is amazing.
Prioritize FOTM heroes in the hero select, know the meta. As sad as it sounds, some heroes are easier to perform and have a better impact on the game than others.
Always try to stretch your XP lead as much as you can. Prioritize wave clear over unnecesarry fights. There’s no easier way to lose, than chasing down Johanna with Brightwing as a team, whereas enemy Azmodan is taking down your bot lane, and the rest of their team is soaking XP.
Learn to know when to push lanes, and when to just soak near your turrets. Vs roamers a safe early game can help you towards late. On the other hand, don’t get swarmed by minions too much, because an early loss of a turret can setback you a lot.
Punish the enemy for their mistakes. Seriously, thats the easiest way to win. You see and overextended Kael’Thas, Sylvanas or whatever pushing further the only pushed enemy lane, whereas you control the rest of the map and the enemy team is elsewhere? Thank you, thats a free kill. And when you get that free kill on lvl 15+, the death timer will surely set back the enemy team in terms of XP and map control.
Use the mercenary mechanics to your advantage in the right time. Most of the bosses in game slam the ground when there’s more than 3 targets around them. When there’s a teamfight near one, using any cc to get the enemy stunned by boss is super easy, and can help you win teamfights like nothing. Bribing enemy giants as Brightwing on cursed hollow for a backdoor push on their keep turrets will grant you easy xp if enemy will not counter them, and countering them will mean someone won’t be present for the tribute/ teamfight/ boss, if you time it right.
Be social. Communicate with pings. Keep the spirits up. Discuss in hero select. If you see your teammate picking Illidan, when you have Brightwing, which isn’t most likely the best support for him, and the enemy team has Muradin and say two mages, you might want to question his pick. On the other hand, don’t be overconfident in your judgements. A good Illidan can carry your team even in shit compositions, it all depends on the counterplay from the enemy team.
Try feeling out which enemies are playing good, which ones might be lower rank/ play worse, and use this to your advantage. I know it sounds horrible, but if you see a Jaina thats clearly playing bad, punish her for it for easy lead. The enemy team will have players on rank simmilar to yours, and your job here is to perform better than them.
Control yourself. Raging will not help, and the time spent on flaming is time spent on afking. Mute toxic players and focus on the game.
Comebacks are a major part of heroes of the storm. As the game objectives scale with time, a late game dragon on Dragon Shire/ Terror can win you the game even if you were behind.
When you control the dragon/ terror, try to mitigate the damage done to you. Never tank two turrets as an early game drag/terror. Sometimes it’s just better to retreat and use that one more rotation of cooldowns to help clear a wave and cc the enemy team to set up a better teamfight.
Keep in mind that the lower the player pool, the higher the MMR spread in teams. Weekends are different though. If you’re playing early in the morning, you might see a team of ranks 38, 33, 31, 13, 2 for example, whereas more towards the late evening the spread should be much lower. Games with lowers ranks can go either way, sometimes your team will underperform badly, sometimes it will be the enemy team.
You can win games with disconnected players as bots, it’s hard, but you should to use pings in a smart way. Bots will follow you if you ping them, and push the lane if they’re not pinged. You can use them to safely soak xp on a less crowded lane, and ping them for teamfights. Winning under theese condition demands a lot of map awarness, but it’s not impossible.