Often, when I have to explain my job to someone who isn't techie, I usually answer saying: I build websites. The result? The other person thinks I create blogs and other easy stuff. A little reductive by my point of view.
So, I have decided to explain in this article what does a Front End developer do, basically my job, in the easiest way.
By the way, before starting, I will explain what is a website, otherwise it would be like understanding what is a mechanic without knowing what is a car at all.
What is a website?
There are so many websites out there but are you sure to know who builds them and what are his or her tasks? Do you know which are the programming languages used to build a website and how is a website structured?
A website is a collection of interlinked web pages and related content identified under a common domain name. It can be public or private.
For example, this blog is a public website in which you can find articles, images, and other web pages. They are all available under the domain name flaco.dev.
Now, we have clear what a website is but there is still one step before understanding what does a Front End developer do: look at how a website is structured.
How is a website structured?
A website is composed by two main sides: the Front End and the Back End.
The Back End is in charge of processing, storing and serving the data of a website. You can think about login forms or registrations forms. In this case, your email and your password are managed by the Back End.
Meanwhile the Front End is in charge to represent the data to the end user, building the layout and make the user interface nicer (at least for some websites). It is pretty easy to understand the difference at high level. I am not going to explain now other differences like programming languages and so on. Our focus today is on the Front End.
Front End vs Back End
So, now we know how a website structure is, let's finally see what does a Front End developer do during his or her routine.
What does a Front End developer do?
As we said a Front End developer mainly create the layout of a website to represent the data to the end user.
So the basic process will be explained as following: get the data from the Back End, build the layout and make the page interactive to the user. But it is not easy as you may think.
There are three main languages used to build a website:
- HTML: is a markup language used to create the skeleton of a layout.
- CSS: is a stylesheet language that describes the style of the elements in the web page.
So to answer to the question what does a Front End developer do we can say that: a Front End developer is the person who builds the layout of a website to present the information requested by the user in the best way. But what does in the best way mean? To understand this, I am going to talk about what are the Front End developer tasks now.
What are the Front End developer tasks?
It is not easy to answer to this question straightforward because there are several websites, and they all are built differently depending on some variables.
Here we can list two of the most important:
- The client: is it a private or a company website? My blog for example is totally different compared with the Amazon e-commerce.
- The end user: Who is my end user? Understanding this is absolutely important because it can give information if the website should be multilanguage, if it must be accessible to anyone. Moreover, which are the devices used by the user? Which screens do they have? Are they fast or do they have a poor internet connection? This can affect the user experience of course.
As you can now probably understand, the websites aren't all equals.
So, depending on those factors, what does a Front End developer do is dealing with several tasks, described here below:
Performance: every millisecond counts and every delay can cause big losses to companies. You have to tweak your app to have your client performance requirements, dealing with heavy images, heavy code or high time consuming operations.
User experience and User interface: one of the most important tasks is to deliver an understandable and easy to use website. The end user shouldn't read a manual to use the website. So, a Front End developer has to build a clear layout, respecting all the user experience principles (buttons dimensions, text dimension, and many many others). This is aligned with a good look and feel of the website, called user interface. Designing is one of the process that a Front End developer could be often involved in.
Search Engine Optimization (SEO): does the website need to be ranked before its competition? Yeah! Let's deal with it too! A Front End developer should know some SEO techniques to boost the visibility of the website he or she is building.
Compatibility: is the end user going to use Firefox, Chrome, Safari, Microsoft Edge, Opera, or Internet Explorer (I hope no)? Just to list a few, those are some browsers used worldwide and they could render the page differently. A Front End developer should check for each browser its version and the device used. The developer has to be sure the website is running smoothly on each browser, and on each device, that is included in a compatibility matrix. It should be delivered by the client, if it is a company. Otherwise a Front End developer should choose depending on the most used browsers and devices in the country where the website is published.
Reusability: a Front End developer, a good one, should deliver an understandable and reusable code. If at some point the developer is not going to work anymore with his or her client, the next Front End developer should be easily develop on top of your code. Otherwise, the first Front End developer will not have a good reputation.
Internationalization: a website can be delivered localized in a single language or it can be multilanguage. The Front End developer must deal with routing and content translation. Is there any Arabic around? In this case the layout should change too, to right to left. I can tell you it is not easy at all.
Accessibility: imagine a shop that would like to be opened to everyone but than it doesn't have a ramp for a person with disabilities. It is limiting the service that is offering. A website works the same. A Front End developer should check that the website can be accessed by people who can't read well, that are using screen readers, and so on. For example, government sites must be accessibles.
Pricing: in case of being a freelance, the developer should find cost efficient solutions depending on the client. For example, don't use top notch technologies for a simple blog. A client must be satisfied of your work even at price level. I would say absolutely important in case of freelancing.
Now that you know what does a Front End developer do, which are the tasks that he or she could be involved in, and the Front End languages used to build a website, you are ready to go with the differences between Back End and Front End in a more specific way explained in this other article.
And if someone asks me what does a Front End developer do, I will introduce her or him to this article. You can do the same!
In case you have been fascinated by the Front End developer job and you are interested on starting a new career as a Front End developer, I can help you with that. Just go to the contact page here and send me a request selecting "Become a Front End Developer" as subject.
Now it is time to leave. I would remember you that if you liked this article and you want to support me, follow these simple easy and free steps:
- Leave a like clicking on the heart icon below
- Share this post on your social accounts or with your friends
- Follow me on Instagram, Facebook, Twitter, and on Github
- Subscribe to the newsletter below to don't miss any article, discount or gossip (there will be a lot)
Thanks a lot for your attention and I wish you a good day!