Overwatch is a great game. It's a brand-new IP from Blizzard Entertainment, and it's a genre the studio has never attempted before (a multiplayer online shooter). Right now, it's in a pretty exclusive closed beta in the lead up to its May 24 release. I've been playing the beta off and on since December, and while I do quite enjoy it, there are a few things that absolutely have to happen before the game hits retail.
First and foremost: duplicate heroes. I know, it's not fun when someone else has picked your favorite hero, and you are forced to play as someone else. We get it. But being able to pick multiple heroes on the same team really pushes the balance philosophy into a bad place. Double Torbjorns or double Bastions on payload, for example, can lead to an almost impenetrable defense. Overwatch is supposed to take more from the MOBA genre in terms of team makeup - encouraging teams to have a healthy serving of tanks, support, and damage. So why not simply take another page from that handbook and remove duplicate heroes?
"Being able to pick multiple heroes on the same team really pushes the balance philosophy into a bad place."
Second is the ammo problem. In Overwatch, everyone has infinite ammo. Yes, most weapons do have a finite clip that has to be reloaded, but you will never run out of ammo for any of your weapons. While it's great that you don't have to worry about stopping the action to search for ammo packs like in Team Fortress 2, it again causes, and will cause in the future, a lot of balance problems.
Take Junkrat, for example. His Team Fortress 2 counterpart is very obviously the demoman. Both of these characters have a very "spammy" playstyle: you constantly lob bombs at your enemy in the hopes that one of them hits. One of the ways that Valve has balanced TF2's demoman in the past is by reducing his ammo. Less ammo leads to either less spam, as the demoman will play a lot more conservatively, or moments of vulnerability as he leaves his post to seek ammo. In Overwatch Junkrat can sit in the same place all day long, lobbing bombs at the enemy and protecting himself with traps with little consequence.
Other "spammy" heroes, like D.VA, Pharah and Hanzo, also suffer from this problem. Even MOBA heroes often have limited resources (mana), so why should Overwatch heroes be able to spam rockets all day long?
Another mechanics change that has to happen concerns one of the main game modes: payload. Copied pretty much straight over from Team Fortress 2, Overwatch's version maintains the same problems as TF2's - the defenders are very heavily favored to win. It's just too easy to set up a solid line of unbreakable defense, particularly in the later stages of the game when the defender's spawn point is so close, and the attacker's so far. In my opinion, the best way to handle this is, just like the "one hero per team" solution, another "anti-fun" measure: longer spawn times.