What is a Front End Developer? (Part 1)
Updated: Aug 2, 2019
In this three-part series, we're gonna discuss what a front end developer is, what a back end developer is and also the pros and cons of each. Part one is all about the front end developer, part two (in another blog post) will be the back end developer , and after that one, we're gonna be talking about the pros and cons of each role and a little bit more information about how it would work and perhaps which one you should be focusing on. But let's start though, with the definition of a front end developer.
As I briefly mentioned, this is a three-part blog series. Today's discussion is all about front end developer.
So what is a front end developer? Well that's a web developer, with a focus on what the user interacts with on a website. They work with the web designer, but also they work with back end developer as well and I'll talk more about it a little bit later.
See the web designer versus a web developer post that I did previously; click here and that outlines more information on what general web developer skills you should be aware of. So check that if you need to.
Getting back at the front end development though, they implement the web designer's user interface and get that working if you will. Now, that's basically the look and feel of the website, but also, they interact with the back end process (if there is one) for a website. These days, all but the most trivial or basic websites usually have some form of back-end or server process. Some sort of data storage or whatever it is.
To hopefully clarify this a little bit more, let's start considering an example of a website. For example here you can see the Learn Programming Academy's website; now, over to the right-hand side you can see that there's an image that looks, what's basically a box that you can click, there's a link that you can click. It's an image of a book and if you click on that, it will take you to another page.
So, the front end developer has implemented that website and they've also added the functionality there so that, once the button is clicked (in this example, the little image button there), it takes you to another page. The front end developer basically added the code to do that and that new page - if the user clicks a button on that page - they've added that functionality as well and you can see that what pops up is a little box for the user to enter their email address and once they've done that, once they've clicked on the button, the information gets sent through the back end process on the server; and that then sends out the ebook.
So, the saving of the email address and sending of the email with a link to the user's email (basically inbox if you will), to download the ebook, that's a back end process and that's created by the back end developer whereas the front end developer, they're focused on the front end. They're focused on the buttons and so forth, the clicks so they open up a new page and what they might have done is they've actually use the presses given to them by a back end developer and they can access that functionality.
In this case, the functionality was for the back end process to accept that email address and then they take that email address away and they start processing. So you can see where the front end developer's role has finished, is in sending the information. They don't know the implementation details of what's happening in the back end: where they have the email, it's actually sent out to someone, how the email was put together and sent out to the user.
Basically, what they're doing, is they've implemented the functionality in this particular example; so going back to the first page: you've got the button on the screen there (the book icon), I've clicked on that, it opens up the next page and then after that, there's another button to click that then pops up the form where the email address is typed in and then the button is clicked to download the ebook. After the download button is pressed, it's the front end developer's responsibility, that's what they've implemented, that they've send that using a special code, a special API code, or a way to access that functionality from the back end, they've used that to send the information through to the back end process on the server and that then, kicks off and does the rest.
So you can see how there's two separate roles: there's the front end developer who's focusing on the look and feel, on what the user's interacting with with the website; and there's the back end process (which we haven't seen in this example), that accepts the email address and starts processing it. So basically, there's a hand off process from the front end where it hands off the information that it has processed (in this case, the email address) and sent that through to the back end; and that's the way it basically works.
The front end developer and the back end developer might be the same developer, depending on whether you're part of a large team or whether you're working for yourself. So I don't think you necessarily can't do both yourself, it is quite common in small development teams or even solo developers to have some skills both as a front end and a back end developer. But certainly, once you connect it to industry and start working with large teams, you'll see that the roles are often separated. So, they've got front end developers, who focus just on the front end, and they've got back end developers, who only focus on the back end and then there's basically whatever they can talk and interact with each other in some way.
All right, so hopefully that's gonna be a bit of a understanding of what a front end developer is. In the next post, as mentioned, part two, we're gonna talk about the role of a back end developer and then part three, the one that's coming out after that, I'm gonna go through the pro's and con's of both the front end and back end developer.
All right, so I hope that helped. If you've got any questions feel free to leave a comment and I'll get back to you.