Coder vs Engineer
What is a coder? A programmer? A software engineer?
At the end of the day it's a few different terms for the same thing, but there's some differences.
These terms have many different meanings and connotations to many different people but at the end of the day they're all mostly the same. The only one that would really stand out to me is "software engineer".
So what does being an engineer have different than the other two? It's more of a broad scope perspective sort of thing. A coder or a programmer may be able to write code-- that's a given. But not everyone who can write code can architect a program in an efficient way. We have seen on previous pages that not all of the skills are just from being able to type things in and make it work. There are plenty of apps and programs that do what they're supposed to do but are buggy or messy or slow!
Knowing a language like English isn't enough to make beautiful poetry. Poetry is a skill that can be taught and experience helps makes it easier, but it is a separate skill.
There's a term "spaghetti code" that describes code that's gotten out of hand. You hear it used a lot when talking about buggy or quirky behavior in video games or websites. A very good engineer will have a good vision in mind to never let the code get that way and having that foresight can make you very valuable!
At the end of the day my bosses have described it to me like this: "Anyone can write code, but only an engineer can engineer code."
Taking this seriously as a career means keeping in the back of your mind that sometimes it's better to take more time to make a better solution rather than just one that works. Some planning in your initial stages of starting a project can save you tons of hours later on down the line, and if that project is one at a big company it could save them literally millions of dollars. Writing better engineered code has a big real world impact!
Stay creative.