Mastering the Full-stack with JS Superpowers

Intro

When I freelanced as a full-stack developer during college, I often found myself stuck switching between different contexts—specifically dealing with practices and syntax differences between JavaScript and PHP. Although I was earning well and had happy clients, the code I wrote felt subpar because it was challenging to master every aspect of web development simultaneously.

Transition to Frontend Focus

As a hardcore JS fan and interface enthusiast, I decided to focus solely on frontend development. After freelancing for a few more months, I joined a startup as a frontend developer. I was content with my learnings and adventures in the frontend world… until I came across this quote:

“The roles required to design and develop a web solution require a deep skill set and vast experience in visual design, UI/interaction design, front-end development and back-end development. Any person who can fill one or more of these 4 roles at a professional level is an extremely rare commodity. However, given that JavaScript has infiltrated all layers of a technology stack (e.g., React, node.js, express, couchDB, gulp.js, etc.), finding a full-stack JS developer who can code the front-end and back-end is becoming less mythical.”
Frontend Handbook ‘18

Motivation for Full-Stack Mastery

This made me wonder—why not? I already know frontend, and I can manage to write (admittedly crappy) backend code in PHP for side projects. Why not leverage my existing JavaScript knowledge and become a full-stack JavaScript developer by connecting the dots and filling in some gaps?

Creating a Learning Plan

When it comes to learning, most plans fail because we don’t often have an action plan. Any resolution or goal without a proper plan is bound to fail! So, I started by planning.
(Fun fact: This is the same reason why many New Year’s resolutions fail!)

I spent a day researching topics and resources needed to become a full-stack developer using the power of JavaScript. The result was a comprehensive to-do list starting from the very basics of JavaScript, building up to advanced concepts, and covering all relevant tech stacks.

The Full-Stack JS Developer Learning Checklist

If you’re a front-end developer looking to up your game or a full-stack developer wanting to brush up on your skills for an interview or a new side project, I’m confident this list will be helpful.

I posted the checklist on GitHub, and you can check it out here.

How to Stay Motivated and Track Your Progress

In order to stay motivated and keep track of your progress, I suggest forking my to-do list from GitHub. Commit to your own repo with crossed-out items as you advance through the topics.

Terminal window
1
git clone https://github.com/siwalikm/Prep-for-Full-Stack-JS.git

P.S. Remember: The key is to keep at it, irrespective of the dull days.

If possible, start learning along with a friend and maybe build something together along the process. If you’re learning alone, reach out to people if you get stuck and try to document your learnings.

Share this post with your friends if you think they’ll find it helpful. Cheers.

Category: technical