Situational is the word I would best use to describe mine.
If i see a tank up in the action, I'll switch engie to go heal him(and I tank engie heal quite a bit, if the tank driver is smart and knows how to protect his pocket-engie). The only disadvantage is Mortar Strikes(see being smart). Snipers(you shouldn't really get sniped much as a pocket engie, Tank = shield) and the last downside is for people like me with horrid aim - The small clips. The fire rate is so quick that I can put 20-25 bullets out and maybe 1-2 will hit someone. while they hit me once or twice and im dead. Hate it.
I medic alot as well, mostly when on vent with players. We will be communicating, one of the goes down and I rush to revive them. The adrenalin and thrill of being a combat medic is amazing.
I'm a terrible sniper half the time. The bullet drop is so weird to me, I can never get it right.. I always aim too far up and stuff, there needs to be a way to really calculate the bullet drop for some people, think unlock or something. So frustrating.
And Assault, useful for noobtoobs, Usually just spam them with the grenade perk and stuff on Bombs and it's real fun, wracks up the kills. Assault is quite versatile, and one of the only classes that is really Self sufficient class that can sit in the back of the enemies base and lob nades constantly killing snipers and stuff.
All classes are situational for me, and I usually spread the love with them, switch around alot depending on the situation. But Im mainly a Tank healer / Destroyer, Combat medic or Bad sniper.