If you have taken that bold step into Web Development, there’s something you should know before you get confused by questions asked by people around you, professionals, or even an interviewer.
If you haven’t, refer back to my previous article, where I wrote about why you should think about starting a career in Web Development.
As a web developer, you have to be specific about where your focus is, that is; web development is divided into three main parts and these parts are Front-End, Back-End, and Full Stack Development.
It’s either you are a Front-End Developer, Back-End, or a Full Stack Developer. You have to choose one or two and focus on it rather than being a jack of all trades with scattered knowledge and inconsistency.
In case you are still confused about what you have read, let me explain what these three parts are and their differences to a developer, and how they affect website development.
Front-End Development
The front end of a website is the part a user sees and directly interacts with. It’s built with HTML, CSS, and JavaScript.
HTML (HyperText Markup Language) is the backbone of the Web. Every website you visit is built with HTML. It takes care of all the structure and content. HTML5 is the current version of HTML on the Web, although sites built with older versions still run fine in your browser.
CSS (Cascading Style Sheets) is what controls the way the HTML looks on the page. CSS sets the colors, fonts, background images, and even the way the page is laid out (you can use CSS to arrange the HTML elements on a page however you want, even if it’s different than the order they’re arranged in the HTML file). CSS3 is the current version of CSS on the Web and adds a ton of features for things like basic interactivity and animations.
Now, you can create a website with just HTML and CSS, but it’s JavaScript that’s really the game changer (plus, it’s what’s causing all the confusion). To put it simply, JavaScript lets you add in interactivity, more complex animations, and even makes it possible to build fully featured Web applications.
It’s the Internet, what can we say!
In short, front-end developers use HTML, CSS, and JavaScript to code up websites. They’re the ones who take the design and create a functioning website from it.
Some sites are only built with HTML, CSS, and JavaScript. Other sites, however, have more code hidden away in the back end of the site, to augment or enhance the front end of the site.
Back-End Development
While the front end is everything the user interacts with directly, the back end is much more behind-the-scenes and can have some advantages over front-end technologies for specific projects. Back-end programming languages include PHP, Ruby, Python, and more.
One thing to note: You’re probably not going to see many job listings that say a company is looking for a “back-end developer.” Instead, you’ll find listings looking for Ruby developers or PHP developers, etc., because the actual programming language a developer knows is key to being the right fit for a particular job.
Learning to code will teach you to find the best solution for your specific problem, and sometimes that means using a back-end language.
Back-end developers generally work with a front-end developer to make their code work within the site’s design (or to tweak that design when necessary) and front end.
Full Stack Development
Full stack developers work with both the front and back end of a website. They’re familiar with HTML, CSS, JavaScript, and one or more back-end languages.
As the line between what can be done on the front end vs the back end becomes more and more similar, and as things that were previously only possible on the back end become possible on the front end, more developers are becoming what we call “full stack.”
A lot of employers (especially agencies who work on different kinds of sites) are looking for developers who know how to work on all the parts of a site, so they can use the best tools for the job regardless of whether it’s technically “front end” or “back end.”
Now, contrary to what a lot of people think, “full stack” doesn’t necessarily mean a developer is actually writing all of a site’s code themselves. Many full stack developers spend the majority of their time in either the front or back end code of a site.
But the point is that they know enough about the code across the entire stack that they can dive in anywhere if needed. And some full stack developers do code entire websites, including both the front and back ends, but usually only if they are working freelance or are the only developer working on a project.
Learning both front and back-end languages is a great way to make yourself a more valuable, forward-thinking, and versatile developer because it’s not likely that you’ll actually be able to focus exclusively on one or the other.