You don’t need to spend $10k on a Bootcamp to become a backend developer.
Whether you need to learn: Node, Express, SQL, NoSQL, REST, JSON, APIs, or the latest fancy technologies, you can do it for free, leveraging the power of the internet.
After the success of The Complete 2022 Front-end development roadmap, I’ve personally gathered, watched, tested, and reviewed thousands of resources, to come up with this:
1. Backend developer roadmap: Learn how the web works
Before starting your journey to become a backend developer, is strongly suggest to understand the main mechanics of the web, and how data exchange works:
Those are only some of the concepts you’ll need to master, to kickstart your career and start building production-ready APIs.
Learn how the web works — A primer for newcomers to web development.
2. Backend Development: Fundamentals of Computer Science
Let me say one thing: fundamentals, are fundamentals.
Learning and understanding:
- How a computer works.
- How variables are stored.
- The differences between compiled code and scripts.
- What compile and runtime errors are.
- The principles of programming.
Is the key to properly understanding the underlying mechanics of complex Backend Frameworks, and how to optimize your code towards the desired outcome.
Published by Harvard itself, this Free Computer Science Fundamentals Course is the best way to set the foundations of your development career starting from the basics.
3. Backend developer roadmap: Learn HTML and CSS
Even if you just want to develop fancy APIs and backend systems:
It’s key to learn how front-end development works and how to better serve its needs. To do so, you can start by learning some CSS and HTML.
There are an awful lot of amazing free resources about HTML and CSS out there, I’ve personally reviewed some:
3.1 Create a Portfolio: Develop Your First Project
Learning by doing is key.
We mainly learn by solving problems, to solve problems we need to practice, to practice we need to create projects.
Creating a Portfolio while walking your journey to becoming a backend developer, is a great way to both: practice and exercise what you learn.
Start by watching this tutorial on how to build your personal portfolio using just HTML and CSS.
You will have time to come back and add some proper backend, with its interactions, a database, and probably some data handling and exchange through APIs endpoints.
At this point though, you should be skilled enough to start making money contributing to Open Source projects. This not only will be a great training field, but also a way to make some good side income.
4. Store Your Backend Code in a Repo — Learn Git/Version Control
Git is an opensource version control system, that allows you to:
- Keep track of your changes.
- Back up your code.
- Avoid disastrous consequences.
- Collaborate seamlessly.
If hosted on a web service such as GitHub, it allows you to synchronize your code with collaborators, keeping your codebase(repositories) on the web, free to be moved between devices.
Learn the fundamentals of Git with Mosh.
5. Learn the Fundamentals of Web Security
Unfortunately, the world is full of bad people ready to steal and use your data, and that of your customers. Knowing how to properly store and secure data and communications, is key for a backend developer.
Understand the fundamentals of web security and how to handle private information the right way:
- Basic Hashing.
Those are only some of the concepts you’ll work with while developing your backends and securing your API endpoints.
Learn the fundamentals of Cyber Security for free, in this amazing course by futurelearn.com.
7. The Start of Your Backend Journey — Node.js and NPM
NPM, is the Node Package Manager, responsible for handling, installing, and importing your Node.js based libraries.
Resources to learn Node.js:
8. Create Powerful APIs: learn Express.js
Even if you could potentially create full APIs just by using Node.js, this isn’t convenient.
Express comes to our help:
A minimal and flexible Node.js framework that will help you creating APIs effortlessly thanks to a myriad of HTTP methods and middleware. Express.js powers thousands of backends around the world, suitable for the most diverse REST APIs.
Learn Express.js with this free crash course by Traversy Media
9. Connect Your Backend to a Database
What’s the difference between SQL and NoSQL databases?
Should I use Postgres or MongoDB?
Databases are a huge part of backend development, as those are the places where your data will be usually stored.
Learning how to create, manage, edit and connect SQL and NoSQL databases, is key for a backend developer.
Learn the differences between SQL and NoSQL in this short YouTube video.
9.1 Should I learn NoSQL or SQL database?
As always: it depends.
Both systems have their pros and cons, which make them great in different scenarios.
My suggestion? Pick both a NoSQL and a SQL database to learn.
I’ve personally tried an awful lot of DB systems, ending up using:
- Postgre as a SQL DB.
- MongoDB as a NoSQL DB.
9.2 SQL Database: learn PostgreSQL
One of the most popular SQL databases of the year: Postgre is an open-source DB system, with over 30 years of active development.
PostgreSQL has a strong reputation for reliability, feature robustness, and performance.
Start learning PostgreSQL for Free.
9.3 NoSQL Database: learn MongoDB
With over 12 years of active development, MongoDB is one of the most popular NoSQL Databases to date.
Hosted by AWS, Google Cloud, and Azure, MongoDB stores the data of thousands of tools and platforms out there.
10. Ship You Backend Faster: Continuous Delivery & Dev Ops.
Amazon famously delivers new code every 11.6 seconds. Just a few years ago, this was unthinkable.
This is thanks to Continuous delivery and Integration technologies: ways to ensure fast execution times, maximizing data gathering, and data-driven decisions.
DevOps stands for development and operations, and it’s a key skill to learn as a backend developer this year.
Learn DevOps from the University of Virginia, on Coursera for Free.
11. Learn by Doing: Create Projects
There’s no better way to retain notions than doing and solving problems.
Sometimes, finding backend projects to practice sounds hard though.
Here’s a list of 20+ backend projects ideas to give you some inspiration, on GitHub.
Just remember: backends are mainly comprised of APIs and Data Exchange, any project including those two domains, will do the job.
You might also want to start writing articles to share your knowledge, build an online presence, and earn from your tech writing skills. Here’s a list of the best blogging platforms for developers.
12. Start Monetizing as a Backend Developer
At this point, you should be able to set up a proper REST API and get paid for it.
The best thing about programming is that: is free to get started and pays a lot.
There are hundreds of ways to monetize your backend development skills. From open source to APIs monetization, from tech writing to YouTube channels.
Learn 9 simple ways to start monetizing Open Source as a developer
If you want to go deeper into monetization for developers, this is not a free resource but definitely worth the price:
Ten Ways to Make Money as a Developer, written by Florin Pop, is the best start to monetize your projects.
Great error handling, bug sorting, and code assistance, something a backend developer should know to create better APIs this year
Learn TypeScript in this free Udemy Course.
Backend frameworks introduce things such as SSG, SSR, or utilities to speed up your development.
- SSG -> Static Site Generation.
- SSR -> Server-Side Rendering.
- CSR -> Client-Side Rendering.
Learn more about backend rendering methods on YouTube.
Backend frameworks are usually based on front-end counterparts, such as React and Vue, strictly connecting your backend to your front-end.
There are many popular JS backend frameworks, such as:
15. React-Based Backend Frameworks: Next.js and Gatsby
React-based and Open-source, Next.js brings hybrid Static and Server-Side rendering to your backend development toolbox.
Learn React: https://youtu.be/j942wKiXFu8
Learn Next: https://nextjs.org/learn/basics/create-nextjs-app
Originally developed by Vercel.com, you might want to explore their free hosting services as well.
Gatsby is also a React-based open-source framework for creating websites.
Specialize in Static Websites such as Blogs and homepages.
Amazingly fast, gives you 2500+ plugins to kickstart your backend.
Learn Gatsby: https://youtu.be/Qms4k6y7OgI
15.3. Vue.js Based Backend Framework: Nuxt.js
Based on Vue.js, Nuxt.js is the Next.js counterpart (you don’t say?).
Modular, performant, and easy-to-use Nuxt.js implements Server Side and static rendering to your workflow.
16. Shift the Heavy Lifting To the Backend: Learn GraphQL
My grandpa used to say: “REST is Great, but GraphQL is lightweight”
Of course, I’m kidding but, simply put: GraphQL shifts the data handling coming from APIs, from the client -> to the server.
This means not more REST, but active data processing and filtering, directly in the backend.
Used by Nasa, Facebook, Airbnb, and GitHub, GraphQL is getting more and more traction this year.
Learn GraphQL with Ben Awad on YouTube.
17. Create Lighting fast APIs With Web Assembly.
WebAssembly is a new type of code that can be run in modern web browsers and provides new features and major gains in performance, to power backends.
It is not primarily intended to be written by hand, rather it is designed to be an effective compilation target for source languages like C, C++, Rust, etc.
Learn more about WebAssembly on MDN.
19. Decentralize Your Backend With Web3.0
Learn Web 3.0 and get paid.
If you want to take a step further, I suggest you exploring the potentialities of Blockchain and Web3.0 development.
Blockchain Devs are paid: $140k/year on average.
Start learning Solidity and Web with this full guide updated this year
Conclusion: Continue building projects
To learn how to code, though, a roadmap is not enough: you need to practice, and you can practice by building projects.
“The best way to learn is by solving problems”Elon Musk
Solve problems, and you’ll get paid for it!
Great article, thank you!
Thank you so much Victor!
This is very useful Vitto, thank you for all you do. Cheers
Glad you liked it clever! Thank you!
Thanks, Vitto, very helpful.
Glad you liked it Amir!
Where does Python come in between all of these? I’ve heard that Python is used in Backend
Yep, this is a JS roadmap 🙂 Python is a different thing 🙂
This is awesome.
A very good read. Bookmarked to my browser
Thank you so much!
Aww!! Great article. Thanks a ton Vitto.
My huge pleasure! Thanks for reading Sumaiya!
Thanks a lot for this amazing article🌷😁
Great article!. Thanks you Vitto!
This is what I want
This is so amazing roadmap Thank you!
what an amazing article :’) !
super advices , super steps. thanks
Glad you liked it Nadeesh!