I'm level 18 engineer; recon has scoped rifle. But you need to shoot head to instant kill and in karkand "fog" dont let you use the scope at his max potential. On the other hand you have claymore mines! Medic has machine gun (uberpowered and superaccurate) and medikits. Soldier. Well dont think has any real strongpoint.
Engineer, has smg, problem on long distance but good medium-close range. And then you have rpg. Godd as antitank, antipersonel and even as a"sniper rifle". No really it has even a scope and once you practice you can even countersniper! And you have also mines, and you can repair vehicles!
So if you actually ahve a clue to what to do in a battlefield go for the other classes. If instead you are like me who likes to blow stuff go for engineer!