MP, don't you ever consider at becomming a drafter ? With such programming skills you'll be able to automate any engineering tasks and able to do them in no time.
I've worn several hats during my career: surveyor, inspector, CSA designer drafter, PLC programmer, GIS Developer, EIC design drafter, CAD Support Tech, P/L designer drafter, CAD Analyst ... automating engineering tasks is exactly what I've done since 1987 in one form or another -- and exclusively since 1995.
But theres one unwritten rule, that you have to waste a few days relaxing/watching movies/whatever, before to liying to your boss that you almost made it till the deadline.
Have never been able to have that luxury, it's always been "go go go!"
Then collapse.
Otherwise he will be like "he made it in no time, perhaps I should give him more tasks instead of raising his salary."
Well there has been that, but at the same time I'm just grateful that in this crazy world, and horrible (local) economy (approaching 11% unemployed) there remains demand for my select set of skills / afflictions and I'm still employed. There are so many good and talented people that are jobless here, it's staggering and humbling.
As for me (currently a drafter) the endless passion and interest of programming brought me here, started from my lazy drafter's spirit.
Sadly the programmer's and drafter's work is evaluated differently, so won't one become both?
I wouldn't be concerned about how you're evaluated. And don't compare your success, your compensation to others. Valuable people are valuable. Period. It may take time for the compensation to be on par with the effort.
But come it will.