OpenLume
Sign in
Roadmaps/Backend Developer
Backend Developer Roadmap · + optional API Platform & Distributed Systems & Scale paths

Backend Developer Roadmap

Stuck as a Backend Developer?

Ask any question, get a 60-second video answer. Free for the first 5 a month — no credit card.

Browse the full curriculum below — 16 modules · 116 topics · 10-14 weeks

▶ Tap any topic or module to ask a question about it.

START

Personalized setup

Choose your experience level and goals before beginning.

PRODUCTION READY
START

Personalized setup

Choose your experience level and goals before beginning.

PRODUCTION READY

Capstone Project

What you'll build by the end

You'll build TaskForge — an AI-powered project management API. User registration and JWT auth, team workspaces with role-based permissions, task CRUD with filtering/pagination/sorting, AI-generated summaries and priority suggestions via OpenAI, file attachments in Supabase Storage, background email and PDF jobs via a Redis queue, Redis caching on hot endpoints, full pytest suite, structured logging with OpenTelemetry traces, and a Dockerized deploy to a real cloud. By the final module, TaskForge is the kind of project that demonstrates real backend competence end-to-end.

Don't want the whole roadmap? Just ask one question and get an instant video answer.

Full Curriculum

16 modules · 116 topics · 10-14 weeks

Click any topic to ask a question about it.

Module 1

Level up your Python with the patterns that matter for backend work — type safety, async programming, structured error handling, and clean project setup.

Project: Initialize the TaskForge project with a virtual environment, pyproject.toml, ruff for linting, and structured logging. Build a typed config layer with Pydantic that loads from .env and validates required values on startup.

Module 2

Before any framework, understand the protocol. Status codes, methods, headers, and content negotiation are the vocabulary every backend engineer is expected to know fluently.

Project: Use curl and HTTPie to walk through every CRUD operation on a public API. Read each request and response — headers, status, body — and document what every field means.

Module 3

Build a working API from scratch. From a single endpoint to a structured app with validation, dependency injection, and auto-generated docs — all in FastAPI.

Project: Build the TaskForge API skeleton: CRUD endpoints for /tasks with Pydantic request/response models, dependency-injected config, middleware for request IDs and CORS, and interactive Swagger docs at /docs.

Module 4

Design a real schema, write queries that perform, and understand how Postgres actually executes them. The database is the floor of every backend system — get it right.

Project: Design the TaskForge schema in raw SQL: users, teams, tasks, comments. Add proper foreign keys, NOT NULL constraints, and indexes on filterable columns. Write queries for task listing with team joins and overdue task aggregation.

Module 5

Most production Python APIs use an ORM. Learn SQLAlchemy 2.0 the modern way — typed models, async sessions, and Alembic migrations — without losing the SQL fluency you just built.

Project: Replace TaskForge's raw SQL with SQLAlchemy 2.0 typed models for every table. Wire the async engine, add a session-per-request dependency, and set up Alembic to manage the schema as code.

Module 6

Connect FastAPI to managed Postgres. Use Supabase for auth and storage so you ship faster, and let Row-Level Security enforce permissions in the database itself — not just in code.

Project: Migrate TaskForge to Supabase Postgres. Verify Supabase JWTs in FastAPI middleware. Add RLS policies so users only see tasks in their team. Build /tasks/{id}/attachments using Supabase Storage with signed download URLs.

Module 7

Good API design isn't subjective — there are proven patterns for URLs, responses, errors, and pagination. Learn the conventions that make APIs intuitive and professional.

Project: Refactor TaskForge to follow REST conventions: cursor-based pagination on /tasks, filters and sort (?status=open&assignee=me&sort=-created_at), RFC 7807 Problem Details on errors, and a clean OpenAPI spec.

Module 8

Secure your API with patterns real teams use. Understand JWTs from the inside, implement role-based access control, and protect against the attacks that actually happen.

Project: Add auth to TaskForge: signup/login with access + refresh tokens, password reset flow with single-use tokens, a current-user dependency, role-based permissions (owner/admin/member per team), and per-IP rate limiting.

Module 9

Real APIs don't do everything in the request cycle. Email, PDFs, AI calls, webhooks — push them to a queue and let workers handle them. Understand queues deeply and you understand backend.

Project: Add a Redis-backed queue (Arq or RQ) to TaskForge. Move email sending to a worker. Add a scheduled job that emails overdue task summaries every morning. Build a dead-letter queue for failed jobs and a retry-with-backoff policy.

Module 10

Caching is a small change with a huge effect — when you do it right. Learn the layers (HTTP, Redis, query plan), the invalidation patterns, and how to find the real bottleneck before optimizing the wrong thing.

Project: Add Redis caching to TaskForge: cache the team task list with automatic invalidation on writes, ETag GET /tasks/{id} so clients skip unchanged responses, and run a load test (locust or k6) comparing cached vs uncached p95 latency.

Module 11

A backend without tests is a backend you'll be afraid to change. Learn the modern Python testing stack — pytest, fixtures, factories, and FastAPI's TestClient — and the right ratio of unit, integration, and end-to-end tests.

Project: Build a pytest suite for TaskForge: unit tests for utilities, integration tests for each endpoint using TestClient against a real test database (with transactional rollback), factory_boy for test data, and run everything in CI on every PR.

Module 12

When something breaks at 3am, observability is the difference between a quick fix and a postmortem. Learn the modern stack — structured logs, OpenTelemetry traces, Prometheus metrics — and what to instrument first.

Project: Instrument TaskForge: structured JSON logs with trace IDs on every request, OpenTelemetry traces shipped to a local Jaeger, /metrics endpoint with request count, latency histogram, and DB query time. Build a Grafana dashboard showing the RED method.

Module 13

Code that runs only on your laptop isn't a backend. Learn to package, configure, and deploy a Python service the way modern teams do — Docker, env config, secrets, zero-downtime deploys.

Project: Containerize TaskForge with a multi-stage Dockerfile, externalize all config via env vars validated by Pydantic, store secrets in the cloud's secret manager, and ship a CI/CD pipeline that runs tests and deploys on merge to main.

Module 14

AI features can transform a CRUD API into a product. Learn to integrate the OpenAI SDK, stream responses, manage cost and rate limits, and build features that fail gracefully.

Project: Add three AI features to TaskForge: (1) POST /tasks/{id}/summarize that streams a token-by-token summary, (2) POST /tasks/suggest-priority that returns a structured JSON suggestion, (3) POST /tasks/search using embeddings + pgvector. All with retries, cost tracking, and a per-user budget.

Optional PathAPI Platform

Webhooks, versioning & multi-tenant APIs

The modules below are optional — only follow this branch if you want to specialize in API Platform. Skip ahead if not.

Optional · API Platform

When external developers depend on your API, the rules change. Learn to ship outbound webhooks, version safely without breaking integrators, and design for multiple tenants from day one.

Project: Add a webhook subsystem to TaskForge: a /webhooks/subscriptions API for tenants to register endpoints, signed payloads with HMAC, retries with exponential backoff, and a delivery log dashboard. Add /v1 and /v2 routing with a deprecation policy.

Optional PathDistributed Systems & Scale

Make it work when one server isn't enough

The modules below are optional — only follow this branch if you want to specialize in Distributed Systems & Scale. Skip ahead if not.

Optional · Distributed Systems & Scale

At scale, every assumption breaks. Learn the patterns senior backend engineers reason in: replication, sharding, idempotency, queues as architecture, and the consistency tradeoffs you can't avoid.

Project: Make TaskForge horizontally scalable: add a Postgres read replica with read-after-write awareness, make every mutating endpoint idempotent via Idempotency-Key, decompose one synchronous flow into a queue-based saga, and document the consistency guarantees you give callers.

Looking at a different role?

DevOps Engineer
Full-Stack Developer
Frontend Developer

Want a guided plan instead?

Get a full learning plan, personalized to your level and goals — ready in 30 seconds.

Generate my full learning plan

Free. No credit card.

Full plan
OpenLume
Get instant, personalized explainer videos for any tech topic.
Products
  • OpenLume
Tools
  • Kubernetes YAML Visualizer
  • GitHub Actions Visualizer
  • Dockerfile Visualizer
Roadmaps
  • All roadmaps
  • DevOps / Platform Engineer
  • Frontend Developer
  • Backend Developer
  • Full-Stack Developer
Resources
  • How it works?
  • FAQs
Company
  • Contact us
  • Privacy Policy
  • Terms of Use

Copyright © 2026 OpenLume. All rights reserved.