Yeah, what he said.
A big part of the problem was how you couldn’t switch on the fly between characters you made in advance, but after that the amount of time it took to max out a character (I’m still like ten hundred games away from Lvl 29 to 30 (?) on my main last I checked) and the penalty for resetting, even if you bought something by accident or wanted to remix your class choices, was a huge pain and made levelling alts unappreciated.
The reason this was such a pain was because there was both a class tree and a generic tree that you couldn’t get all of the skills in both, I think, and these all directly empowered your character. While another high level Engineer could double buff your damage for you if you switched off it, lacking anything such as tactical moves and weapons to get an edge over the enemy team and lacking direct damage mechanics such as Pyro Mines and Sentries directly reduced the overall power of your team in exchange to have the ability to complete objectives as a randomly assembled team.
If I was a low level soldier, I could give ammo and plant explosives, but I wouldn’t have kevlar to increase my health, and… wouldn’t be able to spam grenades?
If I was a low level operative, I wouldn’t be able to hack enemy sentries, probably wouldn’t be able to spot, disguise or hide my presence from enemy radar.
If I was a low level engineer, I was the worst off with no deployables and a slow welding tool.
If I was a low level medic, I won’t be able to mass revive people and keep my healing at a steady rate. Although not essential to completing any objective, the very short TTK would mean pushing anywhere would be impossible.