Earlier quoted context omitted.
An abridged definition of engineering is "applying science to create technology". A software engineer applies computer science to create software based technologies. Under that definition you worked with programmers not engineers. Then, true. You might have worked with programmers that seemed productive and learned on the job. But much of that learning happened at the expense of exposing the company and the customers…
I never said anyone should skip the fundamentals. But you don't need to go to college to learn them. Your nitpick on the difference between engineering and programming is ridiculous, and your definition of engineering is wrong.
If you do not possess a strong problem solving approach, you might not be able to formulate those questions in the first place.
Then, corporate interest aside, there are definitions of software engineering that are very clear. Refer to the IEEE definition of software engineer for instance, it might be more aligned to mine than to the "I feel like an engineer today" idea you are trying to push.