Does Front-End Development Exist?
Tags: webdev, learning, job, frontend
Published: 2023-11-30 15:39:39

_Originally posted on my personal blog www.chaosandvideogames.com_

As I look at the current state of the job market and try to understand what company would be a more suitable fit for me. I began to realize something.

**I have to become a software engineer because being a coder is not enough.**

As someone who loves doing things on the front end it has become painfully and obviously clear that my ability to get a job as well as my ability to grow further in a career will only happen if I adapt to becoming a software engineer. The difference between a coder and a software engineer isn’t much considering you both are capable of doing the same task. However, I believe that the difference lies in the mentality of the person who is writing the code. To make things short, coders are willing to code something that is in their knowledge base, but software engineers have to tackle problems that go beyond their knowledge base and challenge their learnings.

Not saying that typical coders or front-end devs don’t face their endeavors because I for sure know that they do. However, the difference between being a simple coder on the front end and being an actual software engineer to handle back-end operations is a huge step that can only happen when the coder decides they no longer wish to simply handle what most would deem as the small task to complete. As much as I would love to spend all day, making a site have responsiveness, accessibility, and design options for the user like dark mode. 

The current state of being a front-end dev means that you have to also understand the back end of the code because of the nature of the product that you are building. Again, as I look at the job listings in my area, it’s very obvious that companies say that they wish to have a front-end developer yet the list of requirements for languages are for things that most likely apply to the server side of whatever app or website they’re building. A front-end dev usually works on things that are inside of the browser that the user has to interact with. Yet for some reason I find myself studying how to do things on the back end such as Vue and NEXT.js.

Think about it. The majority of tutorials out there always give instructions on how to do full-stack applications which require you to have some knowledge of sharing data from the back end to the front end and displaying it to the users. Either that or making some form of API request, and mutating data.Whether it’s a MERN stack or FERN stack or whatever new acronym that will come out, the ending result is always that you have to write some type of code that makes an asynchronous request or changes the behavior of how data is used in some way. Can you really say that you’re a front-end dev if you’re making a CRUD app that uses Mongo DB or the latest ORM library?

I’m not saying that front-end engineers or developers don’t exist. But the idea of a front-end engineer no longer exists in my opinion. Because companies want you to be more than just someone who can do one side of the side, but rather a unicorn who can handle the entire project.

With the latest release of libraries such as Tailwind, I barely have to think about my overall design system and how I do my style sheets. Not saying that someone who doesn’t know CSS can easily build up a site that will be on Awwwards.com. But tailwind does help you structure your CSS so that you don’t make the mistake of writing code that will overwrite itself and then become problematic later as the need for design changes grows.

_(It’s still possible to make a horribly structured site with tailwind if you’re not good at CSS, but that’s not the point of this article)_

So what does it mean to be a front-end developer? Because when I first started front-end development typically revolved around HTML, CSS, and JavaScript. But now so many libraries and frameworks build on top of those languages to the point that you almost don’t have to understand the underlying concept that makes the language good.

HTML is becoming more like JavaScript

CSS is becoming more like JavaScript with its new functions and operations.

JavaScript is becoming more like HTML simply from being able to make components that can be reused over and over like HTML tags.

I know some things about that last statement aren’t necessarily true and deserve some forethought, but again, this is simply coming from my experience over the past few years of trying to understand what is the difference between a coder and a developer and an engineer. One gets to do more complex math than the other, but that is simply because one is willing to put themselves out there in a more uncomfortable position than the other. To conclude this story and save you some time in your day, my overall thesis is that being a front-end developer technically doesn’t exist because regardless of what position you may apply for the company more than likely needs someone who can understand the server side of things just as well as the front end to save time. If every job that I apply myself to requires me to understand Vue AND Next JS what would be the point of doing things like UI and accessibility for screen readers for people who are visually impaired?

I’ve concluded that I should just study and understand both because the chances of me laboring away at a CSS file or adding the proper ARIA attributes to an HTML tag might not always be the best use of my time. One day I will have to write backend functions to work with data, which I look forward to. 
Which led me to study Golang.Hopefully, it will put me in a bigger position and one day make me a 10x engineer in the future.

Because those do exist right?