The Full-Stack Developer’s Roadmap Part 1: Frontend

by | Nov 18, 2020 | Personal Development, Engineering

Web Development is a huge field on the Full-Stack Developer’s Roadmap, and for simplicity, it’s broken down into two parts. The “client-side developer” or the front-end developer develops the visual elements which you see and interact with from a design. They are responsible for user interaction and retention. In contrast, the back-end developer or the “server-side developer” creates server-side Web Applications and manages interaction with APIs, Databases, and logic apart from integrating the back and front end. They both have their specific toolkit, and in this blog, we will specifically focus on the tools needed for you to become a better front-end developer.

BASICS

So, I assume you’re a newbie. The starting point for you would be HTML, which will help you create a structure for your Web Page. After brushing up on HTML, you might want to beautify by manipulating constraints like font size or color, image width, height, or position? CSS has your back. Guess what? Now your freshly made toolkit is capable enough to create a beautiful Website.

Then there’s Javascript, which provides interactivity to your webpage, i.e., page animation, scrolling capabilities, and a lot more. Writing a lot of code for interaction might be hectic. Here comes jQuery, a Javascript library that speeds up the process for you. jQuery simplifies your javascript coding which results in fewer lines of code and faster development.

Advanced CSS & Frameworks

You have to be aware of the fact most of the content is viewed on Smartphones. Get your hands dirty with responsive web design by learning all about flexbox and element positioning (absolute/relative). This will help you create a mobile and desktop-friendly website.

After trying out some static sites, you will notice CSS’s repetition when building buttons, navbars, or responsiveness to the web page. You can think about using a framework now. There are lots of options out there, but the popular ones are Bootstrap and Materialize. Choose any one and master it by going through the documentation and creating websites.

Package Manager

They are the tools that help the developer configure, install, and upgrade packages like CSS Preprocessor, jQuery, live-server, and so on. NPM is popular and easy to learn. Yarn is an alternative to NPM.

CSS Preprocessor

A CSS preprocessor is a program that lets you generate CSS from the preprocessor’s own unique syntax. There are many CSS preprocessors to choose from. However, most CSS preprocessors will add some features that don’t exist in pure CSS, such as mixin, nesting selector, inheritance selector, etc.

There are a lot of options like SASS, LESS, STYLUS, etc. I prefer using SCSS as it has a similar syntax to vanilla CSS. Now, you’re ready to build Websites with beautiful animation and transitions.

These things might make your code look clumsy and not navigable. You might also have to use a lot of commands while compiling SCSS to CSS and if working in a team to transfer the same dependency as you’re using now to other teammates.

These problems could be solved by using tools like a Task Runner (like NPM scripts), Module Bundler (like WebPack ), linter, or formatter. A lot of options are waiting for you a few google searches away. Learn the basics of version control systems like Git so you can track change across the increasing codebase.

Javascript Framework

Javascript frameworks give a ready-made structure to your JavaScript code for building user interfaces or UI components. Choose something between options like Angular, React, or Vue. React is often a recommendation for a beginner to tackle. Choose one and master it. After mastering one, it’s not a hard task to shift to another one if required.

State management comes next. State management helps you to update a website without refreshing the whole site. This is an important aspect of a Web Application. You have seen State Management in action when you see a partial part of a website refresh without refreshing the whole website. Redux is a state management tool for React.

After this, continue your journey through the Full-Stack Developer’s Roadmap and venture into location services, storage, service worker, and a bit of server-side JavaScript like Next.js. Next.js enables functionality such as server-side rendering and generating static websites for React-based web applications. Now you know how to create PWA’s (Progressive Web Apps).

Testing/Debugging

Testing is used to check the functionality and usability of web applications. The goal is to ensure a bug-free visual layer. This is done by Unit Testing, Integration Testing & Functional Testing. Testing is necessary to find the “bugs” which are to be debugged.

Debugging is simply taking all the errors and resolving them. This is possibly one of the most important gigs a developer does on a day to day basis. You must primarily learn how to use the inbuilt Chrome Developer tools and tweak the things according to the design.

What’s Next?

The frontend part of the Full-Stack Developer’s Roadmap might have scared you, but you’re not the only one to get scared. A lot of people do get scared. The road is long but completely worth walking. After marching the following road, you will be able to get a good job and also start freelancing to various projects – your call. But, don’t forget things move fast here you always have to update yourself with the latest technologies to stay relevant.

Also, look into part 2: backend while you’re here.

Explore more

Why overstimulation sucks your happiness?

It’s small-time I have been here on this planet, and a trait is occurring for the last few years. I am not so joyful I used to be. It’s hard to pinpoint some reasons, but when a thing bothers you every day and keeps you awake with heartache, it must become your...

read more

Serverless, FaaS and why do you need them?

In recent years, serverless adoption has started, with more and more individuals depending on serverless technology to meet organizations’ specific needs. A survey conducted by Serverless Inc showed in 2018 that half of the respondents used serverless in their job,...

read more

The DevOps Roadmap: Unikernels

Containerization is one of the core building principles of clouds and DevOps, but traditional VMs and containers lack the security and agility that modern infrastructure craves. We are moving towards workloads that are smaller, faster, and more secure than the...

read more

The DevOps Roadmap: Virtualization

The Full-Stack Developer's Roadmap Part 1: FrontendThe Full-Stack Developer's Roadmap Part 2: BackendThe Full-Stack Developer's Roadmap Part 3: DatabasesThe Full-Stack Developer's Roadmap Part 4: APIsThe DevOps Roadmap: Fundamentals with CI/CDThe DevOps Roadmap: 7...

read more

Interested in what we do? Looking for help? Wanna talk about software strategy?