Roadmap
Python, zero to job-ready
From your first print() to tested, packaged code that other people can use.
Who it's for
Complete beginners, and anyone who writes Python scripts but wants to write Python software.
Where it leads
- Python developer
- Backend developer
- Data analyst
- Automation engineer
By the end you can
- Write clean Python with functions, classes and modules
- Automate real chores with files, the web and spreadsheets
- Test your code with pytest and package it properly
- Analyse a dataset with pandas
- Ship a small API with FastAPI
- 1
Learn the language
Variables to classes, with exercises. Two free courses that cover the core properly.
- CourseCS50's Introduction to Programming with PythonHarvard. Lectures, problem sets and an automated grader. The best free start.
- DocsThe Python TutorialPython docs
Do this: Solve every CS50P problem set. Then rewrite two of them without looking at your old code.
- 2
Make it useful by automating things
Files, the web, spreadsheets and PDFs. These are the projects that make Python stick.
- BookAutomate the Boring Stuff with PythonAl Sweigart. Free to read online.
- PracticePython track: 140+ exercises with mentoringExercism
Do this: Automate one chore you actually do every week, like renaming files, filling a sheet or downloading something.
- 3
Go beyond the basics
Generators, decorators, context managers and type hints separate scripts from software.
- 4
Test and package your code
pytest and a proper project layout are what reviewers look for first in a Python repo.
- Docspytest: get startedpytest
- DocsPython Packaging User GuidePyPA
- BookPro Git bookScott Chacon and Ben Straub
Do this: Turn your automation script into a package with tests and a GitHub Actions workflow that runs them.
- 5
Work with data in NumPy and pandas
Arrays, dataframes, cleaning and grouping are the base for analytics and machine learning.
- DocsNumPy: the absolute basics for beginnersNumPy
- Docspandas: getting startedpandas
- CourseKaggle Learn: Python and pandasKaggle
Do this: Pick a public dataset you care about and answer three questions about it in a notebook.
- 6
Build and ship an API
A small FastAPI service with a database is a portfolio project that shows you can build.
Do this: Ship an API with a Postgres database, put it in a container and deploy it on a free tier.
Learning this with others is easier.
Ask questions when you're stuck, find people on the same path, and track your progress on DevLearn.