I was thinking about this recently over a cup of Keto coffee. I posit the following definition.
That's it.
Say I want to build a Search Engine. How long will it take? What do I build first? How do I stay on track and not get side tracked building the wrong features? What is the best possible order of building components to maximize my output while minimizing time? How do I keep it running at scale? How do I keep it a high quality, accurate product in the face of constant evolution?
Engineering is the skillset you need to solve those questions.
Being an Engineer means you deal with:
Uncertainty - It is inherit in everything we do. For grand ideas, it's rarely black and white, and when it is, it's usually because it is trivial, small and far from grand.
Insurmountable amounts of work - Building grand ideas is hard. No matter how you dissect the problem, or rely on already built platforms or technologies, it all comes down to a large number of work hours to get anywhere.
So how do we get stuff done as Engineers?
We organize into teams. We take it one day at a time. We decompose giant complexities into manageable components, and tackle them one at a time.
That is an incredibly powerful skillset to have. And here's the key - they are skills that are not only applicable to making things, they can be applied to almost any challenge you face in life.
Therefore, learning to be an effective Engineer is the equivalent to learning how to be successful and efficient in life. All you've got to do is take those blinders off, and apply those skills to the rest of your life.
Imagine what you could accomplish.