Full Stack vs Front End vs Back End
After a little research, I found out that as the Web has grown more complex and as more becomes possible on the Internet, developers have gotten more specialized. And that means instead of developers who do it all, many focus on specific parts of development:
- front end (the visible parts of a website)
- back end (the “under the hood” databases and infrastructure)
- full stack (a hybrid of both)
1. What is a Front End Developer?
TLDR: Front end developers build the visible parts of websites that users see and interact with in their web browsers.
The front end of a website (or web or mobile application) is the part a user sees and directly interacts with. The front end is built with languages like:
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 iteration 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 iteration of CSS on the Web, and adds a ton of features for things like basic interactivity and animations.
2. What is a Back End Developer?
Back end developers build the “under the hood” parts of websites that users don’t interact with directly.
As far as what you can do with a back end language that you can’t do with JavaScript, the list is much more limited today than it used to be. One key difference: Most content management systems are built on a back end programming language, as are many large, complex web applications. JavaScript can suffer from performance issues (i.e., it gets slow or even buggy) in some cases, so while it’s now possibleto use JS to build just about anything you can think of, sometimes there are still better solutions out there. 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 or app’s design (or to tweak that design when necessary) and front end. Which finally brings us to the topic of full stack.
3. What is Full Stack?
Full stack developers are web developers with front end AND back end skills, while full stack engineers have front end and back end skills, as well as experience with things like project management and systems administration.
By becoming a full-stack web developer, we can begin to plan out our projects by finding which tools perform the best job for our task. Certain languages are better at certain things and that’s how it should be seen. Instead of focusing on a singular, one-track solution, it’s much better to get experience in every aspect of web development.
4. What is a Full Stack Developer?
Full stack developers work with both the front and back end of a website or application. They’re familiar with HTML, CSS, JavaScript, and one or more back end languages.
5. How to Become a Front End, Back End, OR Full Stack Developer
Again, regardless of what specific tech skills you learn, you’re never going to learn any of them until you take your first step. Unfortunately, knowing what that first step is is sometimes harder than learning the actual skills themselves. The good news is, we can help! Here are a list of resources to get you on the path to front end skills, back end skills, full stack, and beyond!
- Starting a Career as a Web Developer: Nearly Everything You Need to Know
(this exhaustive, step-by-step blog post will walk you through everything you need to know about breaking into tech as a web developer) - Skillcrush Free Coding Camp
(our free, ten day course that will teach you coding basics in less than five minutes a day) - The Ultimate Guide to Coding for Beginners
(download our 60+ page FREE ebook and keep it handy as a guide while you learn your way around coding websites and web applications) - Skillcrush Front End Developer Blueprint
(our paid, instructor-led course, designed to be completed in three months by spending only an hour a day on materials—this course is focused on getting you prepared to work in tech as a front end developer) - Skillcrush Web Developer Blueprint
(like our front end course, this online class is also designed to be completed in 3 months, but adds a beginner back end focus with an introductory look at the Ruby programming language)