any other tips? like choosing a class or listening to other people and etc?
Listen to what people call out and act accordingly. If someone is 'leading' the team and your team's following, even if the idea is dumb, follow it. As a dumb plan is better than no plan, but should it not work voice your own opinion between pushes. Know how to play at least 2/3 roles (dps, tank, support) and preferably at least 2 heroes from each of the categories you know how to play. The more characters you can play competently the better your odds at winning. Don't insult your teammates and try to avoid passive aggressiveness should you get upset with your team. A team has a much higher chance of winning the higher the morale so it's best to keep personal opinions of the players on your team to yourself.
For climbing I only have one thing beyond the obvious: When you lose try to think of anything you could have possibly done different to sway the match in your favor and look out for those moments in the future. There were times where after losing I realized we could've possibly done a lot better had I switched heroes, and that's not to say I was doing bad on that hero as I was actually doing more than my fair share, but I could've possibly done even more as another hero.