Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save shahwan42/279f6ec17dfc91ec9c6f778ae2877b2d to your computer and use it in GitHub Desktop.
Save shahwan42/279f6ec17dfc91ec9c6f778ae2877b2d to your computer and use it in GitHub Desktop.
Python Django Back End Developer Roadmap

Technologies to learn to become a Back End Developer (Python/Django)

  • Linux - be proficient using Ubuntu for example and the CLI and understand how the shell works, what are environment variables, subshells, processes/tasks, etc...
  • Docker (and docker-compose) - what are containers and how they work (conceptually) and how to create and run ones
  • Git - what does version control system mean and how to use Git
  • RDB (relational databases) - what are relational databases, and understand tables, how to create them and make relations between them as needed... also understand that through SQLite and PostgreSQL (preferred) or MySQL
  • Python - how to write Python very well and understand its [OOP] implementation...
  • Virtualenv - And how to create virtual environments for python to isolate it from the system's installed version...
  • Virtualenvwrapper to manage virtual environments easily
  • Pyenv - to manage python versions globally for your user on the system, instead of using the system's installed python
  • Django - to build the back-end part of a website. Be proficient using Models, Views, Templates, Class-Based-Views.
  • DRF (Django Rest Framework) - to create REST APIs for mobile apps and SPAs
  • All that isn't learned in one day, of course. Take your time.
  • You can learn those skills through online courses as I did before.
  • It will seem intimidating to learn all that at once, but try to grasp as much as you can, and you'll revisit what you learned in the future to refine your knowledge and understand better.

Here are some resources to learn such skills

  • You're not limited to the resources I mention, Google whatever you don't understand event while studying the mentioned resources.

Ubuntu

Docker

Git

RDB

Python, Virtualenv, Virtualenvwrapper, Pyenv

Django and DRF (Django-REST-Framework)

These two courses are important to learn TDD with DRF


To get a job, you need

  • patience... a huge amount of it!
  • A good CV
  • Open source projects that show the above-mentioned skills (put them in the CV, too)
  • Continuous improvement in your skills and too much job hunting!
  • And preferrebly open-source contributions

-- Best wishes.

@dillawarnwl
Copy link

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment