So, if a soldier have performed some amount of special actions on battlefield, he'll receive specialization.
Medic: soldier healed other soldiers five times (one mission with healing counts for one "medic point", that's my idea for now to prevent cheating, but mb this is unnecessary). Soldier will receive health bonus +10 and now medkits which he uses will heal slightly more health.
Medic, level 2, 20 medic points on top of those five, now hospital on a base with this soldier will heal/treat injuries faster.
Medic, level 3, 60 medic points, hospital will heal patients even more faster, bonus to health +25, bonus to all armor +5
Engineer: (when we will have UGVs), 10 repairs with repair kits (i presume we'll also have them), now he don't need those kits to fix UGVs (as if he received a tool belt with all the instruments he'll need), plus bonus to bullet ( +2) and explosion armor (+5, he received a flack jacket).
Engineer: level 2, 25 repairs, now he is giving a production bonus (like he's a worker, a really good one), can build turrets or plant mines or create a little robot, like a spy drone or something.
Engineer: level 3, 50 repairs, explosion armor +50 (he is so experienced with mines/well equipped, that he's not afraid of some "fireworks"), even bigger bonus to production, turrets/robot/mines will receive special ability or become stronger.
So, the basic system is:
[Battlefield actions] -> [Specialization] -> [Levels of specialization (Last level gives biggest bonus)]Sorry for language errors, i'm writing this in a hurry, no time to spelcheck bb got to go hope you'll like it