Skip to content

DevOpsDynamite/KEA_DAT_DevOps_2025_Spring

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

180 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DevOps Semester Plan

Semester Plan

The semester is subject to future modifications and updates during the semester.

# Date Topics Before Class After Class Learning Goals

1

Jan. 31st

Can use basic git commands to clone, add, commit, push, and pull.

Can ssh into a server and use basic Linux commands.

Can do network / process / server troubleshooting.

Can identify problems with an inherited codebase.

2

Feb. 7th

Knows which type of files not to push into version control and why. Will ensure that this is followed-through in the group repositories.

Can and will create proper commit messages.

Knows proper casing and naming conventions.

Understands the OpenAPI specification, why it exists and knows different ways to work it.

Can generate an OpenAPI specification from the group’s application.

Can create a .env file and import/use the environment variables in the group’s chosen programming language.

3

Feb. 14th

Understands the terminology surrounding Github Actions such as workflows, runners, jobs, steps, and actions.

Can create a basic Github Action workflow that is triggered by a push and pull request.

Understands basic cloud concepts.

Can create a virtual machine in Azure and SSH into it. Can open ports and set the IP address to static.

Understands the difference between public and private ssh keys.

Can suggest various deployment strategies and knows the pros and cons of each.

Understands the difference between pull-based and push-based deployment.

4

Feb. 21st

Understands the importance of software quality and tools to measure it.

Understands why technical debt occurs and why it’s important to avoid.

Can argue for the importance of linting.

Knows the difference between linting in a Git Hook vs. a CI/CD pipeline. Can argue for the pros and cons of each.

Is familiar with different branching strategies.

5

Feb. 28th

Understands different levels of build tools from OS to language-specific ones.

Understands the difference between packaging and virtualization/containerization.

Understands how Docker differs from its predecessors and modern alternatives.

Can understand simple Dockerfiles for different languages.

6

Mar. 7th

Can argue for the benefit of using Docker-compose over Dockerfiles.

Understands various basic docker-compose.yml files.

Can argue for the pros and cons of hot reload in Docker.

Understands Continuous Delivery as we define it in this course and has a general idea of how it works.

Can explain what agile is, why it was created.

Understands the history of DevOps and different ways to understand it.

7

Mar. 14th

Guest Lecture by Sofus from Eficode

Knows the historical angel of DevOps and how it has evolved.

Understands the problems that DevOps aims to solve in modern organizations.

Understands the concept of psychological safety and why it matters.

Understands how crucial it is for business competitiveness to bring down pipeline execution time. Can implement simultanously running pipelines to cut time whenever it is possible.

Has read all the course literature and can talk about the content.

8

Mar. 21st

Has a clear view of different definitions of DevOps.

Understands the concepts of the principles of Flow, Feedback, and Continual Learning and Experimentation.

Can argue for the importance of carrying out a postmortem and knows how to approach conducting one.

Can recall various ways to achieve continuous deployment.

9

Mar. 28th

Can explain the DevSecOps mentality and different ways to ensure security in various steps of the DevOps 8.

Can bring up different types of security testing. Can explain SAST vs. DAST.

Knows how to security scan a Docker image. Knows how to set the least privileges for the user.

Understands the IP tables problem of Docker and can suggest a solution.

Understands the mentality of continuous testing. Can mention different types of testing and where they fit in the DevOps 8.

Can explain shift-left vs. shift-right testing. Can bring up examples of tests in each category and the benefit that they provide.

10

April 4th

Understand choosing a database setup based on the application’s needs. Knows when not to use an ORM.

Can argue why MySQL is a problematic choice for a database and can list additional features that other databases offer.

Can give examples to illustrate the difference between migrations and seeding and recall how we did it in Knex.js.

Knows about the difference between web scraping and web crawling. Has an overall idea of different ways to implement it with different tools / libraries / frameworks.

Follows good web scraping / web crawling practices such as legality and politeness.

11

April 11th

Knows how search indexing differs from linear search. Can bring up different things to consider when constructing a ranking algorithm.

Understands the difference between logging and monitoring. Can argue for the importance of both and give exact use cases for why one would do it.

Can argue the importance of logging and monitoring in a DevOps setup and give examples in relation to the DevOps 8.

Can implement logging in a programming language.

Is familiar with a monitoring setup. Knows the difference between push and pull-based monitoring.

Can argue why a monitoring setup should not run on the same server as the application.

12

April 25th

Understands the problems that Infrastructure as Code solves.

Knows about how we define Infrastructure as Code and knows how they differ from Configuration Management.

Can run basic commands in Terraform to provision infrastructure.

13

May 2nd

Knows different deployment strategies and how they work.

Understands the concept of orchestration and can argue for the importance of it.

Knows the very basic concepts of Kubernetes.

Understands the importance of resilience in systems and the idea of applying chaos engineering to improve it.

14

May 9th

Write the report.

No lecture.

No lecture.

15

May 16th

Finish the report.

No lecture.

No lecture.

16

May 23rd

Prepare the exam presentation.

No lecture.

No lecture.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • HTML 78.3%
  • JavaScript 11.0%
  • Python 6.8%
  • HCL 2.9%
  • Shell 0.5%
  • Mako 0.3%
  • Dockerfile 0.2%