[2026-09-02] Labs 1–3 (Hello + Cloud) are due September 6.
[2026-08-26] Welcome to Designing End-to-End ML Systems! The Fall 2026 syllabus and course schedule are now available.
Course Goals
The objective is to transition students from “using models” to “engineering systems.” By the end,
students will have built a complete end-to-end ML pipeline and optimized it for real-world deployment constraints.
Comprehend the need for Machine Learning Systems and why ML system is beyond the model.
Trace the end-to-end ML pipeline from data to deployment. Identify throughput, I/O, memory allocations, FLOPs bottlenecks at each pipeline stage.
Experiment with batching strategies for inference (static, dynamic, continuous). Calculate the throughput-latency tradeoff for a given SLA.
Quantify the impact of data quality and quantization on model performance
Comprehend model drift (data drift, concept drift) and explain why it matters for production systems. Design a monitoring pipeline that detects drift before accuracy degrades.
Prerequisites
If you are not sure that you have satisfied the prerequisites, speak to the instructor before the second lecture.
Prerequisite courses and experience include:
This is a programming heavy course. Expertise with Python is a must. Significant expertise in handling infrastructure, debugging, and being able to learn at an abstract level.
Familiarity with basic probability theory and linear algebra.
Student must have taken some introduction class on data science or be willing to take it along with the course.
One class lab a week, following the lectures. Each runs entirely in your browser, so
there is nothing to install and nothing to set up. Work through them in order, because
each one builds on the week before. Every lab ends by writing a short report for you to
download and hand in.
Training a model is the part you already know how to do. This lab is about the part that decides whether anyone ever gets to use it. It ends with a decision you have to defend: 200 people a second, one machine, and a promise about how long they wait.
Learning objectives
Explain why a good accuracy score does not mean a system is ready to use.
Say where the time actually goes when a system answers a request.
Defend a design decision with numbers instead of a hunch.
A trained model is really just a very long list of numbers, and those numbers have to live on a real machine. Will they fit? And once they do, how long does the machine take to read them all before it can answer anyone? Two questions, four machines, and an ending that catches most people out.
Learning objectives
Work out on paper whether a model will fit on a given machine.
Say what to do when it does not fit.
Split the time it takes to answer into three parts and find the slow one.
Explain why the slow part changes when you send more work at once.
Four months of work, a model that scores 95 per cent, and a tablet it was never going to fit on. This lab is about the stages of an ML project, the direction trouble travels along them, and what each stage has to hand the next one so that a problem gets caught by a machine rather than by a patient.
Learning objectives
Name the five stages, and say what makes them a loop rather than a line.
Trace a deployment constraint backwards to the stages that have to absorb it.
Say what one stage owes the next, and what breaks when it is not handed over.
Explain how a system can fail while every log line says it is healthy.
A model can be right ninety-nine times out of a hundred and still be worth nothing. This lab is about the data underneath it: who is in it, who is missing, why a broken field never makes anything crash, and how to read a score that is flattering you.
Learning objectives
Say why a broken piece of data does not make anything crash.
Work out who is missing from a dataset, and what that costs later.
Tell the difference between a rare thing and a small number of examples.
Read accuracy, precision and recall, and say which one a problem needs.
Pick where to set the line between alerting and staying quiet.
The course project is completed in three phases. Together, the three phases build a complete end-to-end ML pipeline.
Exams
There are two midterm exams, held according to the dates listed in the course schedule.
Grades
Assessment
Component
Weight
Assignments (5 Quizzes, 5 Reflections, Labs)
25%
Midterm
30%
Final Project
40%
Participation
5%
Grade Boundaries
Letter Grade
Percentage ≥
Letter Grade
Percentage ≥
A+
95
C+
77
A
92
C
73
A-
90
C-
70
B+
88
D
60
B
84
F
Below 60
B-
80
—
—
Rules
Course Expectations
Students are expected to complete the labs on a weekly basis as the lectures proceed.
Lecture discussions, lab assignments, and the course project are the core delivery mechanisms for the course material.
Lecture topics may include quizzes and discussions to gauge comprehension and attendance. Missed participation events cannot be made up and receive a grade of zero.
Labs and Deadlines
All labs are an individual effort. Understanding of the labs will be assessed through in-class exercises and quizzes.
Each lab must be submitted by the end of the week. Late submissions are not allowed unless acute circumstances have been communicated in a timely manner.
Exceptions may be made for an illness documented by a medical professional or when the instructor receives advance notice concerning illness, family-related matters, or career-related matters.
Information-technology problems, failures, or challenges are not appropriate excuses for late work.
Communication
The subject of course-related email must contain “CS.” Otherwise, a response is not guaranteed.
All electronic interactions are an extension of the classroom and must remain respectful and professional.
AI and Academic Integrity
Unless explicitly permitted as part of an assignment, students may not use ChatGPT or similar tools to solve course assignments.
All exercises and projects are intended to be an individual effort. Unauthorized collaboration or copying will result in a grade of zero for all students involved.
Academic-dishonesty violations involving programming exercises or projects will be reported to the Office of Academic Integrity.