Overwatch is a frustrating game to play because they almost have it right. It's almost there, if they could just tweak a couple things. A good example is the overtime system. One of the worst ideas in games I've run into. For one, it creates artificial and spiky emotions in players, which just burns people out. It's amazing they don't realize basic things like that, which means they actually haven't had the right talent for a long while.
The company also has a lot of hubris. They spend tons of effort on things like trying to make healers and tanks fun. There's many good reasons to do that and they gave it a good try, but the conclusion should have been: we aren't able to make healers and tanks fun, let's try something else. Instead, they forced people to play them.
Other mistakes include not understanding "the meta." Once they think the meta is balanced in a game, they get conservative and don't want to tweak things too much. They don't realize that the meta is an equilibrium state found by the players. Change the game, a new meta will be found. They don't seem to get this and just let their games run stale because they think the competitive scene drives the player base, instead of the other way around.
Overall the facepalm factor has been too high for too long. Blizzard has always understood the science of game design, but since at least SC2 they lost the art.