Skip to content

Volume 3 — Professional Software Engineering

Turning scripts into systems

The difference between someone who writes Python and someone who ships it: packaging, testing, type checking, linting, version control, code review and CI/CD on GitHub.

Available now

The lessons in this volume are written and available below.

What you will be able to do

  • Package and publish a Python project properly
  • Write tests that catch real regressions, not just raise coverage
  • Build a GitHub Actions pipeline from scratch
  • Containerise a service and deploy it

Chapters

  1. Packaging and dependency management with uv
  2. Testing with pytest
  3. Code quality: ruff, mypy and quality gates
  4. Git and GitHub Flow
  5. Pull requests and code review
  6. GitHub Actions end-to-end
  7. Pre-commit hooks
  8. Releases, versioning and GitHub Pages
  9. Dependabot and branch protection
  10. Reusable workflows
  11. Docker for Python
  12. Kubernetes for Python services

Lessons available now

These lessons come from the Version 1 course and are complete.

Python Tooling & Data Fundamentals

CI/CD Foundations

CI/CD Across Cloud, On-Prem & Hybrid

Designing Python Systems at Scale


All volumes