AI / ML Roadmap
ML Engineer
A machine learning engineer puts models into production and keeps them working — which is mostly engineering, not mathematics. The sequence is Python, then enough maths to reason about what a model is doing, then classical ML, then deep learning, then the modern LLM stack, and finally MLOps, which is where most of the actual job is.
By the end: Train a model, deploy it behind an API, and keep it healthy in production.
The ML Engineer Roadmap
Python and the Numerical Stack~2 months
The language and the three libraries every later stage is written in.
Python fundamentals
Data structures, comprehensions, classes and the standard library. Fluency here saves months later.
NumPy
Arrays, broadcasting and vectorisation. Every tensor library borrows this mental model.
Pandas
Load, join, group and reshape. Most of your time on any ML project is spent here.
Visualisation
Plot the data before modelling it. Most modelling mistakes are visible in a chart first.
Environments and dependencies
Virtual environments and pinned versions, because reproducibility is the whole game.
Software engineering habits
Git, tests and modules. An ML engineer is a software engineer who knows models.
Maths You Will Actually Use~2 months
Enough to reason about model behaviour — not enough to publish.
Linear algebra
Vectors, matrices and their products. This is what every tensor operation is doing.
Calculus for optimisation
Derivatives and the chain rule — enough to know what backpropagation computes.
Probability and statistics
Distributions, expectation and sampling. The most load-bearing maths on this list.
Evaluation metrics
Precision, recall, ROC-AUC and why accuracy lies on imbalanced data.
Algorithmic complexity
Know what your data pipeline costs before it meets a hundred million rows.
Classical Machine Learning~2 months
Still the majority of production ML, and where evaluation discipline is learned.
Supervised learning
Regression and classification, from linear models upward.
Trees and ensembles
Random forests and gradient boosting — usually the best answer on tabular data.
Unsupervised learning
Clustering and dimensionality reduction for when there are no labels.
Feature engineering
Usually worth more than a better model, and almost always where the real gains are.
Validation done right
Cross-validation, leakage and honest test sets. Leakage is the silent killer of ML projects.
scikit-learn
Pipelines and transformers, so preprocessing travels with the model rather than living in a notebook.
Deep Learning~3 months
Neural networks, and the frameworks that train them.
Neural network fundamentals
Layers, activations, loss and the training loop, built once by hand.
PyTorch
Tensors, autograd and modules. The default framework for new work.
TensorFlow and Keras
Worth reading fluently — a lot of production systems are already written in it.
Training in practice
Optimisers, learning-rate schedules, batch norm and regularisation.
CNNs and vision
Convolutions and transfer learning — you will almost never train from scratch.
Transformers
Attention and the architecture behind essentially everything current.
The LLM Stack~3 months
Where most new ML engineering roles currently are.
How LLMs work
Tokenisation, context windows, sampling and what the model genuinely cannot do.
Prompting as engineering
Structured prompts, few-shot examples and evaluation. Treat prompts as code under test.
Embeddings and vector search
Semantic similarity, and the index that makes it fast enough to serve.
Retrieval-augmented generation
Ground answers in your own documents — chunking and retrieval quality decide everything.
Agents and tool use
Letting a model call functions, and the guardrails that stops it doing so badly.
Fine-tuning
OptionalLoRA and friends — for when prompting and retrieval genuinely are not enough.
MLOps and Production~2 months
The half of the job that is not modelling — and the half that decides if any of it matters.
Experiment tracking
Runs, parameters and artifacts recorded, so a result can be reproduced next month.
Serving a model
Wrap it in an API with real latency and error budgets, not a notebook cell.
Containers and deployment
Docker, then a cloud target. ML images are big — the build matters.
Pipelines and orchestration
Scheduled retraining and data pipelines that fail loudly rather than silently.
Monitoring and drift
A model degrades quietly as the world changes. Watch inputs, not just uptime.
Interview preparation
ML theory, coding, and a system design round about serving models at scale.
Frequently Asked Questions
How much maths do I really need?
Enough to reason about behaviour, not enough to publish. Linear algebra for what a tensor operation does, calculus for what gradient descent is doing, and probability and statistics for evaluation — that last one matters most day to day, because misreading a metric is the most expensive mistake in applied ML.
What is the difference between a data scientist and an ML engineer?
A data scientist answers questions with data and usually ends at an insight or a notebook. An ML engineer ships the model as a running system and owns its latency, cost and drift. There is real overlap, but the engineer's job is far more software engineering than statistics.
Do I still need classical ML in the LLM era?
Yes. Most production ML is still tabular — fraud, churn, pricing, ranking — where gradient boosting beats a neural network at a fraction of the cost. Classical ML is also where you learn evaluation properly, and evaluation is exactly what LLM work is weakest at.
Should I learn PyTorch or TensorFlow?
PyTorch, for research and for most new work — it dominates papers and the Hugging Face ecosystem. TensorFlow remains common in established production systems, so it is worth being able to read. Learn PyTorch first and pick up the other when a job requires it.