
CT60A4304 Basics of database systems - Online teaching 1.6.2026-30.7.2026
Database systems. Database design. Object-centric modeling and ER-modeling. Specifying relational models. SQL and object languages.
Perspectives into database design: How database is designed, how data is modeled, and what are data storage structures and access methods.
Transforming ER models to relational models, and then to relational databases. Basics to database programming: queries and other operations, database management, such as triggers. Implementing databases in practice and how to use SQL databases from other programs.
- Responsible teacher: Jiri Musto
- Учитель: Ab Ekong
- Учитель: Jeremias Wahlsten

CT10A5000 Bachelor’s Thesis and Seminar, SSE - Bachelor's thesis, Lahti 1.6.2026-30.7.2026
Software Engineering and Computer science-themed independent project, workshop on scientific writing, and project seminar presentations towards the Bachelor’s thesis work.
- Responsible teacher: Damian Kedziora

- Responsible teacher: Sonja Hyrynsalmi

CT70A9500 Holistic Digital Service Development - Contact teaching, Lahti 31.8.2026-11.12.2026
Holistic Digital Service Development is a project course that combines theoretical learning with hands-on practical experience. In this project-based course, students work in teams to develop innovative digital services in close collaboration with industry partners. Each team is guided by a mentor from the partnering company, who provides valuable insights into the company's business model, needs, and portfolio. The goal of the course is to enhance the value creation of the company through the development of new digital services or the improvement of existing ones. This course offers a unique opportunity for students to apply their knowledge in real-world settings and develop valuable skills in digital service development. In this course, students apply their knowledge of cloud-based services, infrastructure, service design, and intelligent and smart systems.
- Responsible teacher: Dominik Siemon
- Учитель: Tuukka Ruotsalo

CT70A9400 Foundations of Digital Transformation - Blended teaching 1.8.2026-30.7.2027
Different conceptualizations of digital transformation; analysis of digital transformation cases; privacy and ethical issues around digital transformation; emerging technologies (e.g., blockchain, AI) that have been guiding digital transformation; theories, models and methods that have been used to assess the impact of digitalization.
- Responsible teacher: Anastasiia Gurzhii
- Responsible teacher: Najmul Islam

CT70A9150 Introduction to DevOps - Online teaching 1.8.2026-30.7.2027
Distributed version control systems (DVCS). Modern repository hosting platforms, such as GitHub and GitLab. Repository best practices, management, and administration. Solving repository errors. Continuous deployment processes and executing tests. Basics of container platforms, such as Docker. Deploying basic applications from source control systems.
- Responsible teacher: Muhammad Hamza

CT70A9140 Software Development Skills: Full-Stack - Online teaching 1.8.2026-30.7.2027
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics.
The course gives the student basic understanding of full-stack development. The goal is to create a basic front- and back-end and bundle them together as a complete system.
The focus is to understand the bigger picture and how to bundle different software components together to create a working program. You will learn how to use MEAN-stack as a full stack tool bundle to create an app from scratch.
Course is 100% online self-study.
- Responsible teacher: Ahmed Abdelsalam
- Responsible teacher: Muhammad Hamza

CT70A9120 Software Development Skills: Mobile - Online teaching 1.8.2026-30.7.2027
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics. The goal in this course is to make an Android app with Android Studio. The app should have basic functionality with buttons and views. This course aims to teach the basics of mobile development.
Course is 100% online self-study.
- Responsible teacher: Muhammad Hamza

CT70A9111 Software Development Skills: Front-End - Online teaching 1.8.2026-30.7.2027
This course aims give students a chance to create unique projects with a hands-on approach.
The course guides students to find their interest in software engineering skills and to help each student find their desired path in software developing in the future. There are also several other Software Development Skill courses available on different topics.
The goal in this course is to make a responsive webpage using html, CSS and a little JavaScript. These are the basic tools to make today's web-frontend. Students may use Bootstrap or animations in addition. The project focuses only on the layout, styles and the overall structure of the page.
Course is 100% online self-study.
- Responsible teacher: Muhammad Hamza

CT70A6300 Software Process Management - Blended teaching, Lahti 11.1.2027-23.4.2027
The course will introduce and discuss Software Process Management practices emphasizing the most popular process models used in the industry.
The course will provide knowledge about:
-the different software process models and their application to different circumstances
-the main roles related to software development processes
-how to coordinate software development
-how to interface and interact with a software team and among different software teams.
-how to properly estimate the effort
- Responsible teacher: Maria Paasivaara

CT60A9800 Capstone Project for Software and Systems Engineering - Blended teaching, Lahti 11.1.2027-30.4.2027
During this course, students apply all the software engineering skills they have acquired from their earlier courses to practice. Students form teams that run a real software project in collaboration with a customer, from requirements to implementation and delivery to the customer. Topics for the projects are generated by real customers. The focus of the course is on the process and project management issues, especially customer collaboration and efficient teamwork. Teams apply the Scrum process in practice and run their own projects independently using short iterations. Each team presents and reflects on its progress several times during the course. Students reflect on their learning in learning diaries. Delivery of the solution to the customer is required for the successful completion of the course.
- Responsible teacher: Maria Paasivaara

CT60A5401 Game Development Project - Independent online project, Lpr, Lahti 1.8.2026-30.7.2027
Applied software engineering course. The objective for this course is for students to learn how to use their software engineering knowledge in an entertainment software engineering context. With the selected game development tools, student is capable to independently design and develop a small game program on some modern game engine platform, or work as a part of a team developing a larger game product. List of Topics: lectures and project works:- Games as software products- Basics of processes and models applied in the entertainment software industry- Basics of the game development tools- Introduction to game engines and their functions - Basics of 3D objects- Introduction to game development-related programming problem.- Basics of artificial intelligence in entertainment software engineering context.- Basics of sound engineering-Gamification and Serious games
-Basic principles of AR and VR development
- Responsible teacher: Jussi Kasurinen

CT60A4800 Fundamentals of smart systems - Contact teaching, Lahti 31.8.2026-11.12.2026
The aim of Fundamentals of Smart Systems is to introduce the broad spectrum of smart and intelligent systems, especially from a software engineering aspect. This includes mostly non-physical systems such as conversational agents, robotic process automation, prediction, and detection systems but also basics on how cyber-physical systems work and rely on data and sensors. Therefore, this course mostly uncovers the software side of smart systems, as software is crucial to make the systems "smart", by combining and analyzing data, for example from sensors.
- Responsible teacher: Miikka Kuutila
- Responsible teacher: Dominik Siemon

CT60A4002 Ohjelmistotuotanto - Monimuoto-opetus, Lpr 31.8.2026-11.12.2026
Johdanto, ohjelmistontuotannon rooli erilaisten organisaatioiden toiminnassa, ohjelmistotuotantoprosessi, vaatimusmäärittely, mallinnus, UML, arkkitehtuurit, prosessin kehittäminen, projektinhallinta, GDPR, etiikka.
- Responsible teacher: Jussi Kasurinen

CT60A0250 Fundamentals of Programming for international programs - Blended teaching, Lpr, Lahti 31.8.2026-11.12.2026
The topics of the course include but are not limited to:
Week 1: Getting started with programming
Week 2: Strings and printing
Week 3: Conditional statements and Boolean logic
Week 4: Mastering loops in programming
Week 5: Everything about functions
Week 6: Classes, lists & matrices
Week 7: Dealing with text files
Week 8: Python modules + project work starts
Week 9: Handling errors and exceptions
Week 10: Data, Dictionaries, CSV, JSON & own modules
Week 11: Data Structures and libraries
Week 12: Data from internet, web user interfaces, video games
Week 13: Recursive functions and algorithm analysis
Week 14: Instructions for exam
- Responsible teacher: Jouni Järvinen
- Responsible teacher: Janne Parkkila
- Учитель: Lilla Bagossi

CT30A3370 Käyttöjärjestelmät ja systeemiohjelmointi - Verkko-opetus 1.8.2026-30.7.2027
Käyttöjärjestelmän perusrakenteet ja –toiminnot: tiedostojärjestelmä, prosessit, prosessien ajoitus ja hallinta, muistinhallinta, oheislaitteet. Unix-järjestelmän rakenne. C-ohjelmointikieli ja sen ohjelmointiympäristö ja työkalut Unix-järjestelmässä. Unixin komentotulkki-ohjelmointi. Standardi I/O-kirjasto, kehittyneet I/O-toiminnot. Järjestelmätiedot ja –tiedostot. Prosessit, prosessien hallinta, prosessien väliset suhteet. Säikeet ja niiden hallinta. Palveluprosessit. Prosessienvälinen kommunikointi. Signaalit ja niiden hallinta.
- Responsible teacher: Jussi Kasurinen

CT30A1400 Rust Programming - Blended teaching 31.8.2026-30.7.2027
The course focuses on: performance, type safety, concurrency, memory safety and borrowing. It also covers the basic things such as IO with Rust and functions, objects, traits and standard library.
- Responsible teacher: Erno Vanhala

CT30A1300 Fundamentals of Game Development - Independent study 31.8.2026-31.7.2027
The course focuses on: sprites, animation, tile mapping, physics engine, lightning, particle effects, shaders and signals in 2D and 3D environments. It also covers the basic things such as controls, file IO, functions, objects, nodes and scenes.
NOTE: The English materials are not ready until January 2026!
- Responsible teacher: Erno Vanhala

CT10A9512 Research Design and Methods - Blended teaching, Lpr, Lahti 31.8.2026-11.12.2026
Principles of science and scientific communities. Epistemology and ontology in research. The practical research process. Designing research, research questions and hypotheses. Research methods including literature review, qualitative methods, experiments, quantitative methods, and design research. Reporting scientific work.
- Responsible teacher: Kari Smolander

CT30A1500 Continuous Software Engineering with DevOps Practices - Blended teaching, Lpr, Lahti 31.8.2026-11.12.2026
This course aims to make students understand the intersection of artificial intelligence (AI), DevOps practices, regulatory operations (RegOps), and AI Operations (AIOps). Students will learn to integrate AI-driven tools and techniques into DevOps workflows to enhance automation, efficiency, compliance, and ethical considerations. Students will learn to innovate responsibly in the rapidly evolving software industry through lectures, hands-on assignments, guest talks, and real-world case studies.
- Responsible teacher: Nasren Azad