Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Duke University

Rust for DevOps

Duke University via Coursera

Overview

Rust For DevOps is an intermediate level course for software engineers, system administrators, and technical professionals looking to apply DevOps principles using Rust. This course is for you if you have beginner level programming experience and are familiar with Linux, Git, and Docker fundamentals. Through video lessons and coding exercises, you will gain practical Rust skills to build, deploy, and monitor applications using DevOps workflows. You will implement containerization, instrument your code for observability, and automate common administration tasks like file parsing and cron jobs. By the end, you will have the Rust and DevOps skills to rapidly develop robust large-scale applications, regardless of your specific technical role.

Syllabus

  • DevOps Fundamentals
    • This week, you will learn how to explain the core principles and practices of DevOps including automation, monitoring, collaboration, and iteration. You will also learn to describe key considerations for DevOps-enabled applications like version control, testing, linting, packaging, and programming languages. Additionally, you will define containerization and how it relates to DevOps workflows. Finally, you will identify real-world examples and use cases of applied DevOps methodologies. You will apply these learnings by discussing DevOps fundamentals and relating them to your own experience working on technical teams and building applications.
  • Implementing logging and monitoring strategies
    • This week, you will learn how to instrument applications with logging and monitoring using frameworks like ELK stack and Prometheus. You will install, configure, and connect monitoring tools to gain observability into your systems. By adding logging and custom monitoring endpoints to your Rust code, you will understand how to expose metrics and logs for collection. Finally, you will explore strategies like scraping versus pushing data, retention policies, and controlling verbosity. You will apply these concepts by implementing end-to-end monitoring for a sample application.
  • Automating System management
    • This week, you will learn how to automate common system administration tasks using Rust. You will build CLI utilities that can parse files, crawl directories, run external programs, and schedule cron jobs. By handling command output, reporting errors, and logging results, you will create robust automation scripts. You will also construct compliance checks that evaluate system state against policies, using JSON and other formats for reporting. You will apply these techniques to automate real-world tasks like log parsing, and compliance verification.
  • CI/CD Platforms
    • This week, you will learn how to implement continuous integration and continuous delivery pipelines using tools like GitHub Actions and Jenkins. You will understand core CI/CD concepts, components of a pipeline, and workflows for automating builds, tests, and deployments. By managing dependencies between jobs, implementing logic, and linting artifacts, you will create robust pipelines tailored to your project needs. You will apply these skills to build an automated CI/CD pipeline for a sample application.

Taught by

Noah Gift and Alfredo Deza

Reviews

Start your review of Rust for DevOps

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.