Just replace "software developer" with "self-proclaimed software engineer" in your comment and you'd be spot-on.
I went through classical engineering school, and I'd summarize with three categories:
* Newtonian Physics & The Mathematics Behind It (i.e. Differential Equations)
* Ethics
* Technical Communications