Production-first backend Python Developer — backend in Python from scratch, with AI integration


Information about training in this course.

Course objective: to provide, from scratch, the theoretical knowledge and practical skills required to work as a Python backend developer: from the fundamentals of the language to designing, testing and deploying a real backend service — API, database, asynchronicity, background tasks and AI integration.

Training takes place in the centre of Tallinn (Tartu mnt. 18, Tallinn) and/or online. The group size is up to 10 people. All educational materials are included in the course price. A laptop is provided for the duration of the training if needed. No prior programming experience is required — the course is designed for beginners.


Target group:

This course is for you if you:

  • are a beginner and want to learn backend development in Python from scratch, with no prior experience;
  • are changing careers and want to enter IT through the in-demand field of backend development;
  • are a student or graduate of a technical discipline and need practical skills and a project for your portfolio;
  • are a markup or frontend specialist and are interested in moving to the server side;
  • have studied Python on your own and want to systematise your knowledge to a junior backend developer level;
  • are a specialist in an adjacent IT role (support, QA, analytics) and plan to move into development.

Requirements for students:

  • confident PC user
  • basic English (approximately A2/B1) for reading documentation
  • no prior programming experience is required
  • It is desirable to have your own laptop (Windows / Mac / Linux, 8 GB RAM+); a laptop will be provided for the duration of the training if needed.

Learning outcome:

Those who complete this course:

  • write programs in Python (OOP, typing, clean code)
  • work with PostgreSQL and SQL, design and normalise data schemas
  • build REST APIs with FastAPI, including validation (Pydantic) and authentication (JWT)
  • apply asynchronicity (asyncio) and background tasks (Celery, Redis)
  • containerise and deploy a service (Docker, CI/CD, GitHub Actions)
  • integrate LLM/AI (LangChain) and real-time (SSE / WebSockets) into the backend

Training methods:

The total course volume is 145 academic hours. Format: lectures + practical work + independent work. The course is built in layers — from language fundamentals to design, infrastructure and AI integration.

Evaluation criteria for learning outcomes:

Learning outcomes are assessed based on independently completed practical work and a final mini-project (a backend service).

Evaluation methods:

Upon successful completion, practical and homework assignments receive a "pass" grade.

Course completion conditions:

To successfully complete the course and receive a certificate, it is necessary to achieve a "pass" grade on the key practical assignments and the final mini-project.

Additional information:

Training programme group: 0613 - Software and applications development and analysis (0613 - Tarkvara ja rakenduste arendus ning analüüs)
Basic rules for training organisation (in Estonian)
Basic rules for ensuring the quality of the educational process (in Estonian)

Course program

Module Main topics Volume
0. Introductory lesson
  • Overview of backend development; Frontend vs Backend
  • What an API is; the HTTP request lifecycle
  • Where Python is used; overview of the modern backend stack
  • Course roadmap
  • Environment setup: Python, IDE, Docker Desktop, Git, Virtual Environment
  • 2 ac/h
    1. Python Core Fundamentals
  • Variables and data types; numbers, strings, bool, None
  • Collections: list, tuple, set, dict
  • Conditional statements; loops; list comprehensions
  • Working with files; exceptions; importing modules
  • Typing basics: type hints, Optional, Union
  • 20 ac/h
    2. Functions & Clean Code
  • Functions; arguments, args / kwargs; scope; lambda; recursion
  • DRY; splitting code into logical blocks; coupling / cohesion
  • Code readability; naming conventions; docstrings
  • Functional programming basics: pure functions, immutability (overview), map / filter / reduce
  • Code quality tools: black, ruff, isort
  • 10 ac/h
    3. OOP & Advanced Python
  • Classes and objects; inheritance, encapsulation, polymorphism
  • Composition vs inheritance; dunder methods; dataclasses; properties
  • Abstract Base Classes; generators; iterators; context managers; decorators
  • Dependency Injection basics
  • 14 ac/h
    4. Databases & SQL
  • Theory: data storage basics; relational and non-relational databases; transactions; indexes; normalization
  • SQL and PostgreSQL: SELECT, WHERE, ORDER BY, GROUP BY, JOIN
  • Aggregate functions; subqueries; constraints; relations; indexes
  • 16 ac/h
    5. Web Fundamentals
  • Client / Server architecture; HTTP fundamentals; request / response
  • Headers; status codes; cookies; sessions
  • API and REST overview
  • Protocols overview: REST, GraphQL, WebSocket, SSE
  • 4 ac/h
    6. FastAPI & Modern Backend Development
  • FastAPI architecture; routing; Dependency Injection; request lifecycle
  • REST API design; versioning; layered architecture; modular monolith (overview)
  • Pydantic v2: validation, serialization
  • SQLAlchemy 2.0: ORM, relations, async sessions; Alembic migrations
  • Configuration, environment variables, pydantic-settings; logging; error handling
  • JWT authentication; password hashing; RBAC (overview)
  • Git: init, add / commit, push, branch, merge, .gitignore, GitHub workflow, Pull Request (overview)
  • Architecture overviews: hexagonal, DDD, microservices
  • 28 ac/h
    7. Async Python & Concurrency
  • Processes vs threads; GIL; CPU-bound vs IO-bound
  • asyncio; event loop; coroutines; await; gather; cancellation; timeouts; fire-and-forget
  • Async endpoints; async database access; concurrency patterns; background tasks
  • 10 ac/h
    8. AI Backend & LangChain
  • LLM overview; LangChain / LangGraph (overview)
  • AI agents; tool calling (web, DB, services); RAG basics; LangSmith tracing
  • Integrating LLMs into backend services; "FastAPI + AI service" architecture
  • 8 ac/h
    9. Real-time APIs (WS / SSE)
  • SSE; streaming AI responses via SSE
  • WebSockets; real-time communication; connection lifecycle
  • Postman
  • 6 ac/h
    10. Testing & Code Quality
  • SOLID principles; anti-patterns
  • pytest; fixtures; mocking; integration tests; API testing
  • mypy; static analysis; refactoring
  • 10 ac/h
    11. Background Tasks & Scalable Backend
  • Task queues; async vs workers; Redis; Celery; scheduled tasks
  • Gunicorn; Uvicorn workers
  • Horizontal scaling (overview); stateless services; load balancing (overview)
  • Overview: RabbitMQ, Kafka, outbox pattern
  • 7 ac/h
    12. Docker, CI/CD & Deployment
  • Docker: images, containers, Dockerfile, volumes, networks, docker-compose
  • Deployment (overview); Render; VPS deployment (overview)
  • CI/CD pipelines; GitHub Actions
  • nginx (overview); reverse proxy (overview)
  • 10 ac/h
    TOTAL 145 ac/h

    Course information

    Time of conduct:

    17.08.2026 - 17.12.2026


    Timetable:

    Evening groups: 2–3 times a week, 18:00–21:00.


    Apply → We'll reply within 1 business day

    Course length:

    4 months (17.08.2026 – 17.12.2026)



    Format and place of conduct:

    Address: Tartu mnt. 18, Tallinn / Online.
    Gamma Intelligence Training Centre
    The course is conducted in a classroom format (and/or online). The group size is up to 10 people.

    Training language: English

    Price: 1950 EUR + VAT 24%

    Total course volume: 145 ac/h
    Format: lectures + practical work + independent work.


    Tutors

    Nikolay Zubrilov

    Qualification: Python developer and Data Scientist; commercial experience in backend development, data analysis and AI/LLM.

    Specialisation: Python, FastAPI / Flask, SQL (PostgreSQL / MySQL), asynchronicity, LLM integration.

    Teaching experience: instructor on Python and data analysis courses.

    Education: Baltic Fishing Fleet State Academy, Bachelor of Engineering (2019).

    Review the CV

    Roman Kutselepa

    Roman Kutselepa Qualification: over 5 years of Python development and over 3 years of JavaScript development; participated in software-integration projects.

    Specialisation: Python development, web development, software solution integration.

    Teaching experience: over 5 years of teaching and staff-training experience.

    Education: Anglia Ruskin University, higher education (2010).

    Review the CV