Interesting, because my job title says I'm a software engineer. When I'm doing what I call software engineering, I'm designing and implementing code to run in deeply embedded automotive control systems. It's software that's closest to what non-engineers consider engineering - I actually make things happen in real time in the real world. I suppose I solve engineering problems by the application of control theory through information technology (although I'm not sure about the IT bit).