FI1DEFO15 Foundations of DevOps and Programming
FI1DEFO15 Foundations of DevOps and Programming
- Course description
- Course CodeFI1DEFO15
- Level of Study5.2
- Program of StudyDevOps Engineering
- Credits15
- Study Plan CoordinatorFrederick Johannes Botha
This course provides candidates with a combined theoretical and practical foundation in DevOps and programming. On the theoretical side, candidates gain an understanding of what DevOps is, its terminology, its role in business and IT collaboration, and core models such as IT infrastructure, agile methodologies, business intelligence, cloud computing, and the software development lifecycle. On the practical side, candidates develop essential programming skills in a beginner-friendly programming language, learning to design, structure, and debug code, while applying problem-solving techniques to real-world tasks. Together, these competencies provide candidates with the necessary context and skills to participate in software development projects and to understand how their programming work connects to broader DevOps practices.
Knowledge
The candidate…
- has knowledge of key concepts, processes, and tools used in DevOps and programming within modern IT business environments.
- has knowledge of DevOps terminology, goals, benefits, and its industry relevance.
- has knowledge of IT infrastructure fundamentals and the interaction between IT and business intelligence in data-driven decision-making.
- has knowledge of relevant agile methodologies, their principles, and their application within a DevOps context.
- has knowledge of cloud infrastructure theory, including IaaS, PaaS, and SaaS.
- has knowledge of the software development lifecycle (SDLC), including how CI/CD integrates into deployment processes.
- has knowledge of the developer experience (DevEx) concept and its relevance to productivity and learning in DevOps.
- has knowledge of the programming development cycle, from problem definition to deployment.
- has knowledge of programming language syntax, lexicons, and code structure.
- has knowledge of object-oriented programming concepts, including classes, inheritance, and modules.
- has knowledge of core programming constructs such as variables, operators, control structures, functions, strings, and File I/O.
- has knowledge of relevant standard libraries and how to use official developer documentation.
- has insight into relevant industry standards, coding conventions, and common programming patterns.
- can update his/her vocational knowledge through industry literature, documentation.
Skills
The candidate…
- can apply vocational knowledge to explain DevOps principles, terminology, and industry relevance in both technical and non-technical contexts.
- masters relevant vocational frameworks and models, including the SDLC, agile methodology, and cloud service models.
- can apply programming knowledge to design and implement basic scripts and applications.
- masters relevant vocational programming tools and techniques, including IDEs, programming languages, debugging utilities, and standard libraries.
- can find information and resources relevant to solving DevOps and programming challenges and assess their relevance to professional practice.
- can study a situation, identify IT-business interaction points and programming issues, and determine what processes or solutions should be implemented.
General Competence
The candidate…
- understands the key ethical principles that apply to IT, DevOps, and programming, including transparency, intellectual property, and responsible code use.
- has developed an ethical attitude in relation to practising foundational DevOps and programming in professional contexts.
- can carry out foundational theoretical, conceptual, and programming tasks based on the needs of selected target groups or organisational objectives.
- can build relations with peers, related disciplines or external stakeholders when communicating technical concepts or delivering entry-level software solutions.
- can develop introductory work methods, fundamental code solutions, and essential communication practices of relevance to the practising of DevOps and programming.
Digital Learning Resources
The learning management system (LMS) is the primary learning platform where students access most of their course materials. The content is presented in various formats, such as text, images, models, videos or podcasts. Each course follows a progression plan, designed to lead students through weekly modules at their own pace. Exercises and assignments (individual or in groups) are embedded throughout the courses to support continuous practice and assessment of the learning outcomes.
Campus Resources
In addition to the digital learning resources, campus students participate in physical learning activities led by teachers as part of the overall delivery.
Guidance
Guidance and feedback from teachers support students' learning journeys, and may be provided synchronously or asynchronously, individually or in groups, via text, video or in-person feedback.
