Forepart: I'd like to deliver some posts in English and it will not have a particular arrangement.
A good engineer needs to know how to speak and deal with others in a meeting. This important characteristics is called negotiation skill. You will get what you talk about not what you deserve. It is noteworthy that this skill was never paid enough attention specially in engineering schools of Iran. There are some obvious principles that make a significant change in your life. But like other fields, being a professional negotiator is another subject.
I think a good engineer should have at least one alternate plan for every situation. It means that you shouldn't stick to a previous plan and not changing your mind. For example I will run this company with these facilities. However I consider a situation that one of them cause failure. So Plan B, C, … works now.
Postscript: There is not a dead-end for engineers. Either find a way or establish a way.