I've been both a professional software developer and a professional software designer, and I always thought the two jobs were more alike than they were different. What is design? Solving a problem the best way, given a desired outcome and a set of constraints. What is engineering? See above. The tool set is the main difference, but the tool set is the least important part of either job.