loading...
Cover image for Full Stack Developer's Roadmap 🗺

Full Stack Developer's Roadmap 🗺

ender_minyard profile image ender minyard Updated on ・5 min read

It's easy to focus on the front end of web development, but what about the back end? Learning about the back end improves your front end skills.

Here are some resources for full stack development that you can save for later.

Table Of Contents

💻 How The Internet Works
🔚 Advanced Front End
🖥 Operating Systems
📕 Languages
🖲 Version Control
📓 Database Concepts
📔 Relational Databases
📗 NoSQL Databases
📨 APIs
♻️ Caching
🔒 Security
🧪 CI/CD
📙 Development Concepts
🏯 Software Architecture
🧊 Containers
📬 Servers
⚖️ Scalablity

How The Internet Works 💻

What happens when you go to google.com?
🎉 Introduction to Networks
💫 Browser Networking
🎊 IP Addressing
⭐️ HTTP/2

Advanced Front End 🔚

HTML & CSS
💫 JavaScript

Operating Systems 🖥

Using the command line
🎉 What is an operating system?
💫 Memory
🎊 Unix Programming
⭐️ Bash-Scripting Guide

Languages 📕

Know PHP
🎉 Learn Ruby
💫 Learn Rust
🎊 Learn Go
⭐️ Know Server-Side JavaScript

Version Control 🖲

A Visual Git Reference
🎉 Visualizing Git Concepts with D3
💫 Github Cheat Sheet
🎊 SVN

Database Concepts 📓

🌟 Object-Relational Mapping
🎉 ACID
💫 N+1 Problem
☄️ Sharding
CAP Theorem
💥 Normalization
🌟 Indexes

Relational Databases 📔

Theory of Relational Databases
🎉 Learn MySQL
💫 Learn PostgreSQL
🎊 Learn MariaDB
🌟 Learn MS SQL

NoSQL Databases 📗

Learning MongoDB
🎉 Learn CouchDB
💫 NoSQL Databases
🎊 Graph Databases

APIs 📨

⭐️ Working with APIs
💥 REST
💡 GraphQL
☄️ JSON-RPC
🎉 HATEOAS

Caching ♻️

HTTP caching
☄️ Redis
⭐️ Memcached
🚀 Service workers

Security 🔒

HTTPS + TLS
🎉 CORS
💫 MD5
🎊 SHA-2
💡 SCrypt
💥 BCrypt
☄️ OWASP

CI/CD 🧪

Testing your code
🎉 Jenkins
💫 TravisCI

Development Concepts 📙

☄️ SOLID
⭐️ KISS
💥 YAGNI
DRY
🎉 Domain-Driven Design
🌟 Test Driven Development

Software Architecture 🏯

💫 Microservices and Service Oriented Architecture
🎊 CQRS
⭐️ Serverless

Containers 🧊

Docker Fundamentals
🎉 Docker Cookbook
💫 Kubernetes Cookbook

Servers 📬

☄️ Nginx Handbook
💡 Apache
💥 Caddy

Scalability ⚖️

💫 Distributed Systems
☄️ System Design Primer
Real-World Maintainable Software
🎉 The 12 Factor App
🌟 Architecting Frontend Projects To Scale


This was inspired by a different post. In the other post, I wanted the author to provide resources for the topics they mentioned, so I made my own post. ✨

If you think I missed any resources in this post, comment them below!

Posted on by:

ender_minyard profile

ender minyard

@ender_minyard

Web performance, web workers, and multi page applications.

Discussion

pic
Editor guide
 

If you are new, and you are coming in here to see this.

I hope this isn't overwhelming to you.

Don't be discourage.

A Full-Stack Developer is more of a very long journey rather than this experience listed out here.

 

I can't say I'm newbie. I have fundamental knowledge of programming. When I saw above list I came to know I know very less. Till I complete this list, complete framework will change then in what way should I be full stack developer?

 
 

Agreed!! That's why the roadmap requires achieving a long journey. I guess the author tries to convey!!

 
 

Excellent list. For the benefit of other folks who may be working in a company that uses different technologies for different groups, I recommend adding some information about Subversion (SVN) under Version Control. I was so used to git, but hadn't ever used SVN and it took some time to get out of the Git mindset.

There are two posts on DEV that may be of use :


 
 

the web fundamentally is a distributed hypermedia application

 
 

Nice article, thanks :) ... but there is nothing about Frameworks. They are very important. Full-Stack Dev should know Spring Boot (JAVA) and Symfony (PHP) for creating REST APIs and Angular or React for Front End development. There is many topics covered which are less important than frameworks, that needed in work ;-).

 

Not only Symfony but Slim is also great for creating simple API, as it names suggests, Slim is lightweight.
Design patterns such as MVC or ADR which the creator of Slim embraces ( I personally don't like it tho ) could be a plus.

 

I didn't see much on a major corporate tech stack: Microsoft-backed .NET frameworks, SQL Server, and their server architecture (IIS).

There's also not much on what I consider the nexus point, common ground, equalizer, or uniter of the front and backend dev: the IDE. And to tie it back to MS, IMO, they provide the 2 best IDEs in the business: Visual Studio and VS Code. The IDE is where I spend 80 percent of my time as a full stack developer, along with browsers (using dev tools for troubleshooting and researching the internet--I consider the browser as part of the Integrated Development Environment, at least in practice).

It's not to be an exhaustive list of specifics, I know, but here's my comments on specific categories I saw missing the Microsoft platforms I'm used to learning about/using as a full stack dev, FWIW. (I also live in an Apache /Angular / PHP / MySQL world, and saw more about those stacks on the list, which is fair).

Good list of concepts and technologies to be aware of in some degree as a FSD.

 

Python 3 would be a fundamental language to learn before even JS, Rust, and Go.

 

I've only just started learning python for the purposes of backend skills in the near future, glad to see this comment here! 😋

 

Thank you for sharing. I think it would be a good idea to add owasp.org/www-project-top-ten/ to the security section.

 
 

Cool list missing the frameworks though like React, Angular and Vue. Also there are much more languages than that some readers might think that you have to learn all of them. When in reality you can specialise with certain technical stacks like React/Node, React/Flask etc... Also you did not mention Python as a language which has more popularity than PHP and Ruby. Choice is good better to cover them all.

 

This this this! I've seen so many "full stack roadmaps" that did exactly what the other roadmap you referenced did, and left me wanting more specifics. What newcomers will benefit most from is hearing from experienced coders which specific resources are most valuable, and how those fit into the bigger pitcture, which this does. Thanks!

 

This is awesome, I love this kind of resource posts but yes don't get overwhelm with the information provided here. You can learn at your speed. And, if you love roadmaps

here are some more
Frontend Developer RoadMap
Reactjs Developer RoadMap
Frontend Developer RoadMap
Java Developer RoadMap

 

Just How long it will take to complete this journey? I'm in third (pre-final year) of my engineering and I'm about to start my journey in development. I still couldn't decide whether to opt for android development or web development.

 

Awesome list! And so realize today it's way harder to become a fullstack developer it used to be.... You might want to consider some platforms helping you down that road, just like ScaleDynamics

It turns a simple JS modules into a hosted back end and a client wrapper). Work smarter, not harder ;)

 

really good roadmap. Followers of this roadmap keep this in your mind: this is an adventure not a race or mission that needs to be completed

 
 

Nice , 😄, Add Java and C# in languages , it is used by big companies and enterprise. Also add Design Patterns in Development Concepts.

 

This is great! Thanks for sharing!

 

Very Helpful Collection, thas for sharing it with!

 

Can you do half stack developer?

 

Nice road map! Senior-ish web developer here looking to go full stack. Curious, why do you have Rust and Go? Do I really need to learn both?

 

no sleeping, just coding and coding == full stack goal

 

Can we please let PHP die already? JavaScript is terrible enough, no need for two awful languages. Also, who uses MySQL anymore? Everyone switched to MariaDB.

 

this is nice list of full stack stuff. thank you

 
 

Awesome article I’m looking forward to jumping into these one by one!

 

Awesome ! I'll definitely take a look into several of these docs, for a good value improvement in my skills :)

 
 

Thank you for this awesome job. This helped me a lot and I want to start this journey to become a full-stack developer. Once again thank you for this roadmap.

 

I think State machines/Statecharts belongs on the list, not sure in what section though statecharts.github.io/ , xstate.js.org/ etc