/python-developer-roadmap

In this repository, I would like to share my own roadmap to become a Python Developer

Python Developer Roadmap

Essential Books and Websites

Spoiler alert most of the below materials would be for a developers who has novice knowledge of Python and Data Structures

  • Python Tricks by Dan Baden
  • Python Cookbook by David Beazley & Brian K.Jones
  • The Algorithms Design Manual by Steven S.Skiena
  • Grooking Algorithm by Aditya Bhargava
  • Cracking the Coding Interview by Gayle Mcdowell
  • realpython.com by avid Pythonistas
  • pythontutor.com for visualization

What kind of tech stacks you need to know

  • Core Python
    • Data Types
    • Closure, Local, Global, and Enclose states
    • Global Interpreter Lock
    • Memory Management
    • MultiThreading / MultiProcessing
    • Decorators
    • Iterables
    • Iterators / Generators
    • Context Manager Protocol
    • OOP (Encapsulation, Abstraction, MRO, Multiple Inheritance, Dunder Methods, Class Calling Tree, and etc)
    • Unit / Integration Tests
  • Django / Flask
    • Django Architecture
  • SQL / NoSQL
  • Git
  • CI / CD
    • TravisCI
    • Jenkins
    • GitHub Actions
    • Sentry
    • Linters
  • Docker
    • Docker Compose
    • Docker Image
    • Docker Container
    • Volume
  • Kubernetes
  • AWS
    • ETC
    • S3
  • Agile Principles
    • Agile Manifesto
    • 12 Principles of Agile
    • Scrum Framework
  • SOLID / Design Principles(Creational, Behavioral, and Structural)
  • FastAPI / REST APIs
  • Problem Solving (DS/Algo)
  • Caching (Redis / RabbitMQ)
  • Celery

What is next?

  • Create 3 projects that would be worth to talk about during the future interviews
  • Apply some of the tech stacks into your project
  • Prepare your script for the question "Tell me about yourself" more about it read on Cracking the Coding Interview

Start applying for a job interview

Even if you fail at your several tries it will worth it because you would identify your knowledge leaks that must be improved

These are all for now. I would be updating this repo more in depth every now and then