The web industry is rife with job titles. Front End Ninja, Front End Overlord, Front End Engineer, Front End Developer, I could go on. The two I am focusing on are Front End Engineer and Front End Developer.
Is there are a difference between the two, and if so, what is the difference?
The definition of “engineer” according to Wikipedia is:
An engineer is a professional practitioner of engineering, concerned with applying scientific knowledge, mathematics, and ingenuity to develop solutions for technical, societal and commercial problems. Engineers design materials, structures, and systems while considering the limitations imposed by practicality, regulation, safety, and cost.
You could argue someone who has the title Front End Developer or Web Developer could fit within the above description. Developers are always looking for the most practical solutions, considering the limitations (browsers, devices, hardware constraints) and working within other limitations like deadlines, budget and technology stack.
Once upon a time you didn’t call yourself a Front End Developer or Front End Engineer, you just called yourself a Web Developer and if you were really experienced, you called yourself a Senior Web Developer. Things have dramatically changed within the last 5 years in web development, things have become a lot more complicated in my opinion.
As front end tools like task runners/build tools ala Gulp and Grunt implement processes into the daily workflow of a Front End Developer, I believe there are little to no differences between the two titles whatsoever. You could argue a Front End Engineer might possess a degree in software engineering or equivalent, but it would be useless. You can’t have a degree in front end development, just experience and knowledge.
The web industry places too much emphasis on job titles, it shouldn’t matter what you are called, all that should matter is if you can do the job at hand or not.