DEV Community

Cover image for Full Stack Developer's Roadmap 🗺

Full Stack Developer's Roadmap 🗺

ender minyard on September 29, 2020

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. ...
Collapse
 
anraiki profile image
Anri

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.

Collapse
 
iamrohitsawai profile image
Rohit Kiran Sawai • Edited

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?

Collapse
 
sumit profile image
Sumit Singh

I think it's more about learning the fundamentals of each phase. I think that's what you have also done when started programming. Learning basic fundamentals in any language and applying it in other languages.

Thread Thread
 
bhadresharya profile image
Bhadresh Arya

That's right. Frameworks will come and go. but the concept stays the same. If the core concept and fundamentals are learnt well then no language or no framework will be hard to understand.

Thread Thread
 
trangchongcheng profile image
cucheng

I agree

Collapse
 
aashiqincode profile image
Aashiq Ahmed M

But not the core na

Collapse
 
zachgoll profile image
Zach Gollwitzer

Totally agree. The additional point that I would add is that this list appears as separate concepts, but if you're building a production-ready application, you'll learn 80% of this list within the scope of a single project. I don't think they are meant to be learned in isolation (although sometimes this is necessary).

Collapse
 
ankitmpatel profile image
Ankit Patel

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

Collapse
 
ajax27 profile image
Shaun Collins

Totally agree!

Collapse
 
hyperx837 profile image
Hyper

just following these things and "diving deep" into this topics will complete that long journey

Collapse
 
dualyticalchemy profile image
⚫️ nothingness negates itself • Edited

the web fundamentally is a distributed hypermedia application

Collapse
 
dualyticalchemy profile image
⚫️ nothingness negates itself • Edited

oh you mention docker; use lazydocker. also: percol, ranger, ack, ... all available through homebrew. pryjs is helpful too

Collapse
 
ender_minyard profile image
ender minyard

this is so good

Collapse
 
siy profile image
Sergiy Yevtushenko

Suggestion to use microservices is not very good one. This is an expensive step and in most cases organizations are not prepared for them.

Collapse
 
dualyticalchemy profile image
⚫️ nothingness negates itself • Edited

i didn't suggest to use microservices. i saw that someone else mentioned it, and i supplied links to tools and ideas that makes microservices easier to achieve. i listed tools relevant to microservices; i did not suggest that one choose microservices over some other SOA or style irrespective to their problem or economic situation

if anything, a more intuitive reading of my post would be: "IF you use microservices, use scale cube and microservice design canvas", not "HEY USE MICROSERVICE NOW"

notice, all I did was mention the word "microservice" and two things. just because someone puts it on the road map doesn't mean it's a suggested path, but that it is a suggestion of an opportunity to take a path.

this discussion is about what we can learn as developers in order to be competitive and knowledgeable given the problem set, regardless of the budget to achieve it. we're not here to figure out one organization's problem as individual developers. microservices is one of many things we're expected to understand and learn. we're not asking "what is the road map if you have budget X for organization Y", we're just asking what the road map is. you're bringing it a lot of other background or contextual information to a discussion that doesn't depend on it

Collapse
 
alamba78 profile image
Amit Lamba

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

Collapse
 
cjcon90 profile image
Ciaran Concannon

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

Collapse
 
jep profile image
Jim

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 :


Collapse
 
ender_minyard profile image
ender minyard

done!

Collapse
 
pawelowczarekfalcon profile image
Paweł Owczarek

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 ;-).

Collapse
 
lbeul profile image
Louis • Edited

I totally get your point, Paweł. From the Employability Aspect, it makes a lot of sense to focus on the latest frameworks and libraries. However - as a learning roadmap - the goal of this article may be to focus on teaching you the underlying concepts and principles modern web apps rely on. I think if you got this essential knowledge and understand what goes on "under the hood", it'll be easy for you to pick up new languages & frameworks.

Collapse
 
allestri profile image
Allestri

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.

Collapse
 
dabjazz profile image
Yash_Jaiswal

I've got the java developer roadmap
Core java(basic concepts, oops, collection framework, stream api)->advance java (servlets,JSP,JDBC)->build tool(maven/gradle)->framework (Spring/hibernate/play/grails etc)

Collapse
 
melvinkim profile image
Melvin Kimathi

Hey, could you share the Java roadmap

Collapse
 
alamba78 profile image
Amit Lamba • Edited

The article is about fullstack roadmap. A person new to programming would only get tripped up with JS's quirks, if they truly want to learn JS and not a framework or library. Python will be better to learn OO, and with that foundation someone can tackle the idiosyncrasies (prototypal inheritance) of JS. I would never wish for my enemy to come into programming with JS as their first language. Better to get an early win with Python or even Java. It's not a race.

 
savagepixie profile image
SavagePixie • Edited

JS first, in my opinion, will lead people new to programming down a whole lot of hurt.

On the other hand, people who start with JavaScript won't try to write JavaScript as if it were another programming language and get frustrated because it doesn't work like their favourite language does. Neither will they learn only one programming paradigm like OOP because it's the only one their language supports and then try to impose it to every other language they learn.

Also, JavaScript is a very nice language to start with because you can very quickly see fancy things happening (like a webpage reacting to user clicks and all that), as opposed to just printing stuff on the console.

Collapse
 
sandorturanszky profile image
Sandor | tutorialhell.dev

You need to now what's availble, but focus on Front-end or Backend. Unless you use JavaScript, of course. In this case you can be more or less proficient in the client and server tech.

The best is to learn concepts and patterns. The rest are tools that come and go. If you know a programming language, you will figure our any framework or lib written with it. If you know what databases are, what are the core principles, how they work and what they are for (SQL, NoSQL, Graph), you will figure out MySQL, PostgresQL, Mongo, etc.

With this knowledge you will be always uptodate.

Collapse
 
shaijut profile image
Shaiju T • Edited

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

Collapse
 
bunda3d profile image
Vom Com

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.

Collapse
 
andrewbaisden profile image
Andrew Baisden

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.

 
alamba78 profile image
Amit Lamba

You seem to be looking for an argument. I never said don't learn JS. It's the order of learning I'm talking about. JS first, in my opinion, will lead people new to programming down a whole lot of hurt. I think you should re-read what I said without your bias. JS is fantastic and crucial, in time, for a new programmer.

Collapse
 
scroung720 profile image
scroung720

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

Collapse
 
ender_minyard profile image
ender minyard

done!

Collapse
 
stojakovic99 profile image
Nikola Stojaković

For those who are still coming to this post - don't use Rust by Example if you're a beginner. Start with the Rust book. Also, keep in mind that Rust is quite hard for beginner developers and there are not much jobs in it right now for juniors.

Collapse
 
dabjazz profile image
Yash_Jaiswal

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.

Collapse
 
ender_minyard profile image
ender minyard • Edited

Learning is the point.

Learning how to learn is the most important skill you can practice. You will never stop learning. There will always be something new. The point is to enjoy the process of learning.

Collapse
 
tnharvey profile image
Neal

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!

Collapse
 
fluxthedev profile image
John

Actually when I worked for nationwide, alot of teams were using go for a Middleware between front end and back end/apps. Wendy's also (unless they changed it in the last 3 years) uses go for their pos system

Collapse
 
farukbigez profile image
farukbigez

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

Collapse
 
devhammed profile image
Hammed Oyedele

How will I be able to know all these when the government of where I live "Nigeria" is killing techies!

Collapse
 
mmoallemi99 profile image
Mohammad Moallemi • Edited

I've written a Python Backend Developer Roadmap from Zero to Mastery, it can be a good fit in your list.
dev.to/mmoallemi99/how-to-get-a-jo...

Cheers!

Collapse
 
amt8u profile image
amt8u

Good collection. Adding to my reading list. But I wont categorize this as Full Stack dev guide. In fact every topic itself is so big that you could find a full time job for each one of them. At once it felt like I am checking out the syllabus for a 3 year course.

Collapse
 
mdalaminroni22 profile image
mdalaminroni22 • Edited

I really enjoyed this article
Also a find this platform to more information - weekin2.blogspot.com/2020/07/how-t... 🕵️‍💯 (how to become a full stack web developer "

Collapse
 
amboulouma profile image
Amin M. Boulouma
Collapse
 
domis66 profile image
Dominique Péré • Edited

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 ;)

Collapse
 
javinpaul profile image
javinpaul

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

Collapse
 
swathipai13 profile image
miss_multitasker

I started crying after reading this list. Firstly because I was getting a grip over node and react, juggling with python and Javascript. I always thought for myself, these would be something industries use and would help me make many projects, and also land in a descent job. Guess it would take time for me to do anything in life!

Collapse
 
ender_minyard profile image
ender minyard • Edited

Consider this a lifelong reading list, not a to-do list. Take your time.

It will not "take time" for you "to do anything in life". Every day that you wake up and get out of bed, you're doing something. Brushing your teeth and making your bed is an accomplishment, especially during the times we're living in. Please be kind to yourself.

Collapse
 
kisore99 profile image
Kisore Subburaman

Thanks a lot!

Collapse
 
kevinlalkalathingal profile image
Cloud_Kiddo

Thank you for this post. I'm new here and now i know that there's a lot more to learn.

Collapse
 
nocnica profile image
Nočnica Mellifera

Welcome! Thanks for bringing the positivity

Collapse
 
oryon profile image
Aryan Verma

Thanks a ton! This has got to be one of the best web dev source compilations!

Collapse
 
anja profile image
Anja

Brilliant thanks for this! 😊

Collapse
 
devdev606 profile image
Huntr.dev

Thanks you.. successful for u.. GBU

Collapse
 
rahulh123 profile image
Rahul

Wow! This is incredible! I think this is the kinda stuff that makes self-learning easier. It's like a curriculum. Thank you so much for this resource, I am sure you helped a lot of developers.

Collapse
 
fluxthedev profile image
John

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?

Collapse
 
tayyabtariq242 profile image
Muhammad Tayyab Tariq

great

Collapse
 
jiasheng profile image
JS

We are building a new toolkit ZenStack for simplifying full-stack development with Next.js using Typescript, which aims to "bring the power of full stack to the frontend".

Here is the post for how to use it, hope it could help you get on the road:
dev.to/zenstack/how-to-build-a-pro...

Collapse
 
lollykrown profile image
Nazarite™

I finally have time to go through this and I'm wowed. Thank you so much for this compilation @ender. This means so much someone like me with no computer science background

 
fluxthedev profile image
John

Yeah it seems to be kicking off! Find a use for it where you are and make a case for it!

Collapse
 
shyam1319 profile image
Shyam Lal

For beginners it will help 👍

Collapse
 
eavnitech profile image
eavnitech

Thanks

Collapse
 
lorenzoblog profile image
Lorenzo

I created my list too - dev.to/devlorenzo/the-ultimate-com...

Collapse
 
nurshod1999 profile image
Nurshod1999

Good

Collapse
 
jimmykimani profile image
Jimmy Kimani

This is awesome! Thank you for sharing.

Collapse
 
redcandiss profile image
Red Candiss

Wow, these are golden resources to get into. I hope my age can fulfill it. Thanks a bunch!

Collapse
 
adilvelizade0 profile image
Info Comment hidden by post author - thread only accessible via permalink
Adil Velizade

Please follow instagram : @master_javascript

Collapse
 
huynhkhanhduc profile image
Duc Huynh

Great article!

Collapse
 
tomasroj profile image
Tomáš Roj

Also the prototyping part is important. dev.to/tomasroj/your-first-prototy...

Collapse
 
chamindujs profile image
Chamindu Amarasinghe

I have a good feeling that this article will change my life!

Collapse
 
tomasroj profile image
Tomáš Roj

Prototyping skill is also important. Need help? Try my AdobeXd from scratch series: dev.to/tomasroj/prototyping-in-the...

Collapse
 
aravindcoder profile image
Aravind

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.

Collapse
 
rekreanto profile image
rekreanto

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

Collapse
 
pneuro profile image
Sammie Kendrick

My new home page.

Collapse
 
truevaibhav profile image
Vaibhav

Agree💯.

Collapse
 
remonhasan profile image
Remon Hasan

Efficient Roadmap. Thank you.

Collapse
 
salahyoumir profile image
salah youmir

Heart, Unicorn and Saved !
Thanks a lot, this is very helpful :)

Collapse
 
devwhoruns profile image
devwhoruns

You can add concepts of SSO like SAML, OIDC etc.

Collapse
 
kateh profile image
Kate (she/her)

This is great! Thanks for sharing!

Collapse
 
hasone profile image
HasOne

Very Helpful Collection, thas for sharing it with!

Collapse
 
enriqueedelberto profile image
Edelberto Enrique Reyes

Thanks for sharing. I like it

Collapse
 
wallwrecker profile image
wallWrecker

Can you do half stack developer?

Collapse
 
nikhilroy2 profile image
Nikhil Chandra Roy

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

Collapse
 
hassan_dev91 profile image
Hassan

this is nice list of full stack stuff. thank you

Collapse
 
ajax27 profile image
Shaun Collins

Great list, thanks

Collapse
 
liamgilroydev profile image
Liam Gilroy

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

Collapse
 
merkrynis profile image
Julien Bouvet

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

Collapse
 
niradler profile image
Nir Adler

Maybe add basic cloud knowledge

Collapse
 
octoparsehola profile image
Octoparse Español

NIcee and here is a spanish guide of API for beginners: Web Scraping con API: una Guía para Principiantes octoparse.es/blog/web-scraping-api...

Collapse
 
n8fury profile image
Mamdud Hasan • Edited

@ahmed12960
See this bro
This will be very much handy for us

nd specially thnx to the author
much love❤️❤️

Collapse
 
rooarii profile image
Rooarii MANUEL • Edited

The most important is not the goal, but the path. Great article

Collapse
 
aniruddhadak profile image
ANIRUDDHA

Just amazing 😻.

Collapse
 
devdev606 profile image
Huntr.dev

Helloo there.. can you help me to first step what can i do ? Thanks n GBU all

Some comments have been hidden by the post's author - find out more