0% found this document useful (0 votes)
78 views

Back End Developer Roadmap: Mikael Abehsera & Josh Fluke

This document provides a roadmap for becoming a backend developer, outlining essential skills and tools to learn. It recommends choosing a text editor, programming language, package manager, and database(s). It also recommends learning frameworks, RESTful APIs, security practices, DevOps with Docker, and continuous integration/deployment. The roadmap concludes by advising users to apply for jobs, build a portfolio, and continue learning through practice and building projects.

Uploaded by

PencilWarrior
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views

Back End Developer Roadmap: Mikael Abehsera & Josh Fluke

This document provides a roadmap for becoming a backend developer, outlining essential skills and tools to learn. It recommends choosing a text editor, programming language, package manager, and database(s). It also recommends learning frameworks, RESTful APIs, security practices, DevOps with Docker, and continuous integration/deployment. The roadmap concludes by advising users to apply for jobs, build a portfolio, and continue learning through practice and building projects.

Uploaded by

PencilWarrior
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

G R I N D R E E L

BACK END
DEVELOPER ROADMAP

A GUIDE TO GETTING JOB READY

MIKAEL ABEHSERA & JOSH FLUKE


START
A text editor is for
writing/modifying text/code.
TEXT EDITOR/IDE
*Choose one*
Visual Studio Code
Visual Studio
Sublime
Webstorm

CHOOSE A LANGUAGE
A programming language is a
set of commands, instructions,
and other syntax used to create
a software program.

NODE.JS PYTHON JAVA C#


(JAVASCRIPT)

RUBY GO PHP RUST

Package managers are used to


import dependencies (external
code written by you or someone
else). PACKAGE
MANAGERS
*Choose one for your language*
Node => Npm
PHP => composer
Python => Pip
Ruby => Gems

The console is a place for us to control


the computer using commands and
we receive an output. A lot of tasks
have been replaced with graphical CONSOLE
alternatives, like creating a folder, COMMANDS
changing a file name, etc. but there
are still certain tasks that need to be *commands will change for OS*
done through the console. ls
cat
curl
tree
tmux
du
git (for version control)
SSH
grep
Testing in general is to make sure
your code runs as intended, and if
not it will tell you where its going
wrong. Front-end testing involves
TESTING checking functionalities like
buttons, forms, graphs, menus,
etc.
*Choose one depending on what you need*
Node.js => Mocha, Chai, etc
Python => Selenium
Java => Selenium
.Net => NUnit
Ruby => Rspec
Go => goroutines
PHP => PHPUnit

Databases are storage for data,


while there are different formats DATABASES
and use cases, their main goal is
to store data. *Choose one or two*
Oracle
PostgreSQL
MariaDB
MySQL
MSSQL
SQLite
MongoDB

CHOOSE A FRAMEWORK
Frameworks streamline the
development process. It allows
you to have clean code without
having to reinvent the wheel.

NODE.JS PYTHON PHP C#


(JAVASCRIPT)
Express Django Laravel .Net

LEARN THE FUNDAMENTALS


This is most of the content we recommend you learn to get a job as a backend developer.
Or at least familiarize yourself with.
RESTful API architecture centers
RESTFUL API'S around manipulating resources.
We often use the CRUD method
which stands for Create. Read,
Update, Delete.
Client Server based
CRUD => Create, Read, Update. Delete.

Security on the internet is more


important now than ever before.
We store lots of private
information such as passwords,
credit cards, social security
numbers, etc. So we want to SECURITY
make sure the can not be stolen.
Authentication
Encrypting private data before storing in DB

BASIC DEVOPS Tools like docker are made to


simplify deploment and running
your backend applications.
Use Docker to deploy and run the server

Continuous Integration and CONTINUOUS


Continuous Deployment are
another addition to devops, they INTEGRATION
are ways to make deployment
and continuous updates to the *Choose one or two*
application as seamless and Travis CI
quick as possible to minimize Jenkins
down time. Buddy
Team City

APPLY TO JOBS
Create a resume (via resume template on the grind reel store)
Create a cover letter (via zero experience cover letter template on the
grind reel store)
Master the interview *Product and course coming soon*
Build a portfolio. *Product and course coming soon*

LEARNING NEVER
STOPS
Keep practicing algorithmic thinking on sites like CodeWars, LeetCode,
etc.
Keep building projects and add them to your portfolio.
Keep working on your data analysis
Master the interview. *Product and course coming soon*

You might also like