Production first - AI fullstack Python Developer


Information about training in this course.

Course objective: to provide, from scratch, the theoretical knowledge and practical skills required to work as a Python fullstack developer: from the fundamentals of the language and markup (HTML/CSS/JS) to designing, testing and deploying a real web application — frontend, 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 fullstack development in Python from scratch (frontend + backend), with no prior experience;
  • are changing careers and want to enter IT through the in-demand field of web development (frontend + backend);
  • 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 want to grow into a fullstack role — backend, APIs and AI;
  • have studied Python on your own and want to systematise your knowledge to a junior fullstack 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)
  • build responsive interfaces (HTML/CSS) and write client-side logic in JavaScript, connecting the frontend to the API
  • 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 240 academic hours, of which 150 academic hours are classroom contact hours with the instructor (lectures, practical work, seminars) and 90 academic hours are independent work. The course is built in layers — from language fundamentals and frontend (HTML/CSS/JS) to backend 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 full-stack web application).

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
  • 17 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
  • 9 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
  • 12 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
  • 14 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. Frontend: HTML, CSS, JavaScript
  • Semantic HTML5: page structure, forms
  • CSS3: selectors, box model, flexbox / grid, responsive design
  • JavaScript: language basics in the browser, DOM, events
  • Fetch / AJAX: requests to a REST API, rendering data, error handling
  • Practice: a simple frontend connected to the course's FastAPI backend
  • 24 ac/h
    7. 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
  • 24 ac/h
    8. 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
  • 9 ac/h
    9. 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
    10. Real-time APIs (WS / SSE)
  • SSE; streaming AI responses via SSE
  • WebSockets; real-time communication; connection lifecycle
  • Postman
  • 5 ac/h
    11. Testing & Code Quality
  • SOLID principles; anti-patterns
  • pytest; fixtures; mocking; integration tests; API testing
  • mypy; static analysis; refactoring
  • 8 ac/h
    12. 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
  • 6 ac/h
    13. 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)
  • 8 ac/h
    TOTAL (contact hours) 150 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: 240 ac/h (150 classroom + 90 independent)
    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