Machine Learning Systems Engineering

ADVANCED COURSE
3 units

SKILL SETS
Data management / Architectural design / Developing batch / Streaming data pipelines, scheduling, and security around data

TOOLS 
Containers, cloud, and Kubernetes ecosystems / Command line (bash) / Python / Git

DESIGNED BY
James York-Winegar

The Machine Learning Systems Engineering course provides learners hands-on data management and systems engineering experience using containers, cloud, and Kubernetes ecosystems based on current industry practice. The course will be project-based with an emphasis on how production systems are used at leading technology-focused companies and organizations. During the course, learners will build a body of knowledge around data management, architectural design, developing batch and streaming data pipelines, scheduling, and security around data including access management and auditability. The course will also cover how these tools are changing the technology landscape.

Students will learn to differentiate between monolithic and microservice architectures, and will gain experience selecting appropriate use cases for each. The course will focus on continuous integration and continuous delivery pipelines for automated code deployment that are used for ML models, and on serving ML models over an API in real-time. Students will learn how stateful systems add complexities to systems engineering, how to leverage a cache for serving machine learning models to reduce load on production systems, and how to identify and construct system performance metrics towards the optimization of costs and latency of serving inferences for machine learning models. Students will gain an understanding of how to deploy Kubernetes for efficient management of machine learning models.

Take the Next Step

Advance your data science career with UC Berkeley’s online Master of Information and Data Science.

Request Information
Admissions Overview