Software engineer is a term that can help with visa applications. Programming feels a lot like engineering, architecture and shop work combined. A guy with a machine shop and an idea can create a machine that becomes a very useful mass market product even if he didn't do any mathematics other than measurement and arithmetic. What an engineer does with lots of math can create a similarly identical product. Some problems you need an engineer's sophistication with mathematics and physics to create (like a bridge), and similarly in programming, some problems in graphics and what not require sophistication in mathematics and physics to even create it or to advance the field.