Copenhagen School of Design and Technology


DevOps with Linux, Python & Django

Danish title
DevOps with Linux, Python & Django
Study programme
Web Development
Type of education
Full time education
Level of education
Bachelor (top-up)
6. semester
Duration of the subject/module
1 semester
Programme elements
Start time
Håndværkergården, København N
Subject number
Responsible for the subject(s)/modul(es)
Henrik Strøm
Arturo Mora Rioja
  • Purpose and learning objectives

    This elective aims to give the student practical skills in developing modern web applications.

    The course weighs back-end development at 75% and web infrastructure at 25%.


    The student will gain knowledge about some of the most important problem areas in back-end web development:
    • the underlying design principles of the Internet and the web design and development of robust protocols and APIs with REST
    • design and development of hypermedia-driven web applications
    • how back-end components like databases, task queues, caches, and objects storage can strategically be applied
    • design accountable solutions
    • understanding the HTTP protocol

    The student will understand and be able to reflect on questions like:
    • challenges and solutions in scaling web applications
    • how solutions can be designed around back-end components
    • how to reduce the complexity of web development projects


    The student will gain skills to:
    • develop robust and scalable web applications using Python and Django
    • develop RESTful APIs
    • develop hypermedia-driven web applications
    • practically apply back-end components in development projects
    • deploy applications on the Internet
    • develop accountable solutions


    The student will learn to:
    • develop advanced web applications that are robust and scalable using back-end components
    • deploy and maintain web applications on the Internet
    • develop and implement solutions according to the Internet design principles

  • Type of instruction
    The course is based on Problem-Based Learning. The students are introduced to the Python programming language and the Django web development framework through the development of a simple application as class collaboration. The students must then apply their knowledge in developing a larger application project, where the student must also acquire new knowledge on their own to complete the development. The teacher will act as a supervisor in the development project, so the students are not left on their own.
  • Subject/module requirement for participation

    Academic requirement for participation
    No special requirements.

    Equipment needed to participate
    Windows PC, Mac or Linux
    - min 8 GB RAM (16 GB RAM preferably)
    - 200 GB available disk space
    - CPU with virtualisation hardware (usually available in most modern CPUs)
    - 15,6” screen or bigger is recommended

  • Exam

    The learning outcomes of the exam are identical with the learning outcomes of the subject(s)/modul(es)

    Prerequisites for access to the examination
    Mandatory assignments 1 and 2 accepted.
    Exam in one or more subjects
    Subject/module is tested standalone
    Type of exam
    Combined written and oral examination
    Type of assignment
    Project developed in Python and Django.
    Individual exam or group exam
    Exam languages
    Danish (Norwegian/Swedish)
    10 min. individual presentation of the project, 15 min. examination in the project and the course curriculum in general, and 5 min. for grading and student change.
    Permitted exam aids
    Available exam aids
    Type of evaluation
    7-point grading scale
    Internal censure
  • Preliminary literature list
    This is a preliminary literature list. A final literature list will be provided in connection with study start.
    Course materials available to the students via Internet.
  • Additional information
    This elective subject may not run in certain semesters if not enough students choose it.

    Some classes may take place online.
hours of teaching
hours of preparation
The figure shows the extent of workload related to the subject divided into different study activities.

In the subject DevOps with Linux, Python & Django you will receive 80 hours of instruction, which corresponds to 106 lessons (1 lesson = 45 min.) and 29% of your total workload for the subject.

The teaching primarily consists of the following activities: classroom teaching, project work, peer-review, Online teaching.
The preparation primarily consists of the following activities: project work, searching for information, reading the curriculum, group work, reading your own notes.

Read about KEAs Study Activity Model

*KEA can deviate from the number of hours if this is justified by special circumstances