Made with ML: The Applied ML Engineering Curriculum by Goku Mohandas

Made with ML by Goku Mohandas is the applied ML engineering curriculum most practitioners quietly recommend to each other: 48,883 stars and a fork count that suggests people are actually building with it rather than just bookmarking. Where most ML tutorials end at “the model trains,” this one keeps going into data engineering, MLOps, deployment, and monitoring. It’s the engineering layer that turns models into products, and it’s the curriculum most LLM tutorials are missing underneath them.

Made with ML by Goku Mohandas, applied ML engineering curriculum, 48,883 stars on GitHub
  • 48,883 stars
  • 7,690 forks
  • Jupyter Notebook
  • Other

Made with ML: the engineering layer most ML tutorials skip

The defining feature of Made with ML isn’t the model coverage, it’s the engineering coverage. Most ML curricula teach you how to train a model; this one teaches you how to ship one: data pipelines, feature stores, model registries, experiment tracking, CI/CD for ML, and monitoring in production, the unglamorous infrastructure that decides whether your model actually reaches users or dies in the demo stage.

This matters more in the LLM era than it did in the classical-ML era, because LLM applications have a longer surface (retrieval, prompts, fine-tuned weights, evaluation, fallback logic), and every layer is a place for production to break. Made with ML teaches the discipline that prevents those breaks.

What the curriculum actually covers

The repository is structured as a full applied ML curriculum: foundations (Python, statistics, software engineering for ML), machine learning (classical algorithms, evaluation, feature engineering), deep learning (neural networks, training dynamics, modern architectures), and MLOps (deployment, monitoring, online experimentation). Each section has both conceptual lessons and applied notebooks.

The MLOps section is the standout. Where most ML repositories treat deployment as an afterthought, Made with ML treats it as the main event. You’ll learn about model registries, feature stores, online versus offline serving, canary releases, drift detection, the parts of the engineering stack that turn a Jupyter notebook into a production system. If “I shipped a notebook and it broke in production” describes a current pain, this section is the cure.

The deep learning section is solid but not exceptional; there are deeper treatments in dedicated DL repositories. The value of Made with ML isn’t depth in any one section; it’s breadth with engineering rigor across the entire surface.

How Made with ML differs from LLM-focused repos

Made with ML predates the LLM era and its core curriculum is classical ML plus deep learning plus MLOps. It does not specifically teach LLMs. That’s a feature, not a bug: the engineering foundations underneath LLM applications are the same as underneath classical ML applications, and most LLM tutorials skip them.

Pair Made with ML with an LLM-specific resource, mlabonne’s LLM Course, Hands-On Large Language Models, or the DeepLearning.AI LLMOps course, and you have the full stack: classical ML foundations, LLM-specific techniques, and the MLOps discipline to ship either.

Who it’s for

The intended audience is engineers who want to ship ML systems, not researchers pushing the frontier, not data scientists building notebooks for analysis, but engineers responsible for ML in production. If “I can train a model but I don’t know how to deploy it” describes your gap, this is your repository.

It’s also useful for engineers coming from software engineering into ML: the engineering discipline translates directly, and the ML sections assume you can code but don’t assume you’ve taken a graduate ML course. The pedagogical design is unusually thoughtful about prerequisite knowledge.

What it isn’t: a research-flavored repository. If your goal is novel architectures or pushing the frontier, this isn’t the resource. It’s the engineering canon, not the research frontier.

Honest limitations

The curriculum is broad but not always deep. Each topic gets the right treatment for orientation, enough to make good decisions, not always enough to implement from scratch. You’ll need supplementary resources for production-grade depth on any single topic.

The maintainer, Goku Mohandas, runs a paid cohort-based course that uses this repository as the free layer. The repository is fully usable without the course, but be aware that some pedagogical decisions reflect the cohort context (group projects, peer review) that solo learners skip.

Get started

The repository has a documented setup path:

git clone https://github.com/GokuMohandas/Made-With-ML.git
cd Made-With-ML
pip install -r requirements.txt

Start with the foundations section even if you think you don’t need it. The Python style and software engineering conventions established there are used throughout. Then jump to the section that matches your current gap.

Made with ML earns its 48k stars by being the applied ML engineering curriculum most practitioners quietly recommend to each other. If you’ve ever shipped a notebook and watched it break in production, this is the cure. Pair it with an LLM-specific resource for the full stack.