For software engineering, I recommend A Philosophy of Software Design. It has principles that I think translate well to other engineering fields. For engineering in general: To Engineer is Human - Henry Petroski The Art of Doing Science and Engineering - Richard Hamming Structures: Or Why Things Don't Fall Down - J.E. Gordon
Also recommended in this reply