Phase 0 — Foundations
Duration: 2 weeks | Prerequisite: Basic Python (functions, loops, classes)
Why This Phase Exists
AI/CV engineering is applied mathematics implemented in code. Before training a single neural network, you need to fluently manipulate multi-dimensional arrays (images are just NumPy arrays), reason about memory layouts and broadcasting, and understand the math that underpins gradient descent, attention, and convolution.
Hiring managers can tell within 10 minutes of a coding interview whether a candidate has genuine foundations or just memorized API calls. This phase ensures your foundations are unshakeable.
Labs
| Lab | Topic | Key Skills |
|---|---|---|
| lab-01-python-advanced | Python internals & patterns | generators, decorators, dataclass, __slots__, context managers, type hints |
| lab-02-numpy-matplotlib | NumPy for image ops | broadcasting, fancy indexing, strides, image manipulation, visualization |
| lab-03-math-for-ml | Linear algebra + calculus + probability | SVD, eigendecomposition, chain rule, Bayes' theorem |
Learning Outcomes
After this phase you will be able to:
- Write idiomatic, performant Python that a senior engineer would not rewrite in a PR review
- Treat images as what they really are: 3D tensors of shape
(H, W, C) - Implement matrix operations from first principles without reaching for a library
- Derive the gradient of a loss function and explain why the chain rule makes backpropagation possible
Interview Relevance
Questions from this phase appear in every CV/ML interview, often as screening filters:
- "What is broadcasting in NumPy? What are the rules?"
- "Explain SVD and name 3 applications in computer vision."
- "What is the difference between a generator and an iterator in Python?"
- "How would you implement a decorator that caches function results?"
- "What is the chain rule and how does it relate to backpropagation?"