- Home
- Courses
- Python for Software Engineers
- Build Real Things
Micro Free Course — 100% Free Learning
All lessons in this module are free to learn. Sign in with Google to save your progress.
Build Real Things
Six hands-on builds: a CLI tool with Click/Typer + tests + packaging + publish; an async API client library; a performance data processor; type retrofit of an untyped codebase; a small FastAPI service; profile-and-optimize a slow program.
Module Content
Build 1 — CLI Tool (Typer + tests + package + publish)
A complete Python CLI tool: pyproject.toml, Typer commands, pytest tests, packaging, publish to PyPI Test.
Build 2 — Async API Client Library
A reusable async HTTP client library with retries, timeouts, rate limiting, and a typed interface. Tests included.
Build 3 — High-Performance Data Processor
Combine asyncio (I/O) and multiprocessing (CPU) to build a fast data processor. Profile, measure, optimize.
Build 4 — Type Retrofit (Add Types to Untyped Code)
Take an untyped Python codebase and add types incrementally. Make Pyright strict mode pass.
Build 5 — FastAPI Service (Production-Ready)
A small FastAPI service with proper config, structured logging, tests, OpenAPI docs, and Dockerfile. End-to-end.
Build 6 — Profile and Optimize a Slow Program
Given a slow Python program, find the bottleneck, fix it, and document the 10x speedup. Measure before and after.