Course Objective & Scope
Turning experimental notebook scripts into maintainable, high-performance AI libraries and data pipelines requires deep mastery of Python's internals. This course covers Python's object model, memory management, concurrency primitives and modern software engineering tooling through practical AI and data engineering workloads.
Participants process large data streams in constant memory with generators, overcome I/O and CPU bottlenecks using asyncio and multiprocessing, pinpoint slow code with cProfile and memory_profiler, and package internal libraries with pyproject.toml and uv. The programme finishes by refactoring a raw ML prototype into a tested, installable Python package.
Who Should Attend?
- Data scientists and ML engineers refactoring notebook code into production modules
- Python developers building high-throughput data processing and LLM orchestration services
- Platform engineers authoring shared internal Python SDKs and libraries
- Prerequisite: solid grasp of core Python (functions, classes and standard data structures)
Key Takeaways
- Design robust interfaces with
dataclasses, Pydantic,Protocoland static type checking (mypy/pyright) - Process large datasets with minimal RAM using iterators, generators and context managers
- Navigate the GIL and choose properly between
asyncio,ThreadPoolExecutorandProcessPoolExecutor - Profile CPU and memory bottlenecks and accelerate hot loops with NumPy vectorisation or Numba
- Build, lint, test and distribute internal Python packages using
pyproject.toml,uv,ruffandpytest
Curriculum
Advanced Object Model, Type System and Functional Constructs
- Dunder methods,
__slots__,dataclasses,typing.Protocoland Generics - Parameterized decorators, closures,
functoolsand custom context managers (contextlib)
Memory Management, Iterators and Generator Pipelines
- Reference counting, garbage collection,
weakrefand common memory leak patterns - Lazy data-loading pipelines with generator expressions,
yieldanditertools
Concurrency and Parallelism: asyncio, Threading and Multiprocessing
- The GIL (Global Interpreter Lock), free-threaded Python and I/O-bound vs CPU-bound workloads
- High-concurrency API and LLM calls with
asyncio(TaskGroups, Semaphores) - Multi-core data processing with
concurrent.futures,multiprocessingandshared_memory
Profiling and High-Performance Python
- Bottleneck analysis with
cProfile,py-spyandmemray/memory_profiler - NumPy memory layout (views vs copies), vectorisation and accelerating loops with Numba JIT
Modern Packaging, Code Quality and Testing
- Standard project layouts with
pyproject.toml,uv/ Poetry,ruffandmypy - Testing ML and data pipelines using
pytestfixtures, parametrisation and mocks
Other Courses in This Category
-
API Integration and Development with Python for AI Projects
Consuming and building APIs in Python for AI and data projects: HTTP/REST principles, requests and async httpx clients, authentication, retry/rate-limit handling, LLM APIs and foundational service design.
- Live Course
- 5 modules
-
Building Modern Backend and AI APIs with FastAPI
End-to-end modern Python web service development with FastAPI: Pydantic v2, Dependency Injection, async SQLAlchemy database integration, OAuth2/JWT security, pytest and Docker. For backend and AI developers.
- Live Course
- 5 modules
-
PyTorch Fundamentals for Deep Learning
Deep learning programming fundamentals with PyTorch: Tensor operations and GPU acceleration, autograd, Dataset/DataLoader pipelines, building neural networks with nn.Module, training loops and saving models. For data scientists and developers.
- Live Course
- 5 modules
-
TensorFlow and Keras Fundamentals for Deep Learning
Deep learning fundamentals with TensorFlow 2 and Keras: tf.Tensor, GradientTape, tf.data pipelines, building models with Sequential/Functional/Subclassing APIs, callbacks, TensorBoard and SavedModel. For data scientists and engineers.
- Live Course
- 5 modules
-
R Programming for Data Science and Statistical Modelling
R programming for data science, statistical analysis and machine learning: tidyverse (dplyr, tidyr, ggplot2), hypothesis testing and regression, ML workflows with tidymodels, Quarto reporting and Plumber APIs.
- Live Course
- 5 modules
-
Python for Data Science
Hands-on Python training covering data manipulation with Pandas and Polars, visualization with Matplotlib, Seaborn, and Plotly, exploratory data analysis (EDA), and machine learning modeling with Scikit-learn.
- Live Course
- 4 modules
Get in touch