A similar question has been discussed in Programmer vs. software engineer but most of the responses miss the essential point, which is - what is engineering. The standard definition is:
The application of scientific and mathematical principles to practical ends such as the design, manufacture, and operation of efficient and economical structures, machines, processes, and systems.
At the same time (see Lack of knowledge of fundamentals) it seems that many of today's software development 'CRUD' jobs, which may be as high as 80% of the market, do not require a formal engineering background, such as knowledge of scientific principles.
Therefore, the questions are - should the IT industry rationalize and standardize all of the job titles according to a formal scheme? Are there any dangers in keeping the current job title soup? Is it objectionable to put in the same category the software developers who know the fundamentals with the ones who don't? Is software engineering very different from other engineering branches when it comes to application of scientific principles?