Jason Heyward is a fine baseball player. The media hyped him up and that takes away from that fact. The "ball just sounds different off his bat" "haven't heard the ball pop like that since Aaron" descriptions made him out to be the savior of baseball. Which he never would've been, but doesn't mean he isn't very good overall.
He was hyped up, but there is no doubt he was an extremely gifted prospect and has underachieved. Good for him that he signed a monster contract almost purely on the basis of his defense, but he is a disappointment purely because of the fact that he just isn't a very good hitter, either for average or power. His hitting has actually gotten quite a bit worse since he was traded from the Braves.
33.1 career WAR is very good. He is a very good baseball player. His offensive year in STL contributed to that contract BTW.