Gain hands-on experience with new technologies and research within areas related to algorithm design, programming languages and computer systems engineering
Computer systems and networks master's programme at Chalmers
As a student of this master’s programme, you will develop a solid grasp of computer systems and networks through a broad, yet in-depth, training experience in the field of Computer science and engineering.
You will acquire theoretical knowledge and engineering skills in:
- Cyber security
- Computer systems engineering
- Dependable real-time systems
- Distributed computing and systems
The master's programme instils a set of essential skills that prepare you to work in Information and Computing Technology (ICT).
Courses in computer networks, parallel and distributed systems, computer architecture, cyber security, and real-time systems are taught by internationally recognised faculty in Computer science and engineering. In addition to academic training in skills related to algorithm design, programming languages and computer systems engineering, you will gain hands-on experience with emerging technologies and have opportunities to participate in cutting-edge research. This master's programme is the first within Chalmers to provide the necessary preparation to contribute to ubiquitous computing, cyber-physical systems, and other rapidly growing areas in the expanding ICT industry. If you are interested in becoming a technology expert in these and other areas, the programme provides an excellent background for pursuing doctoral studies.
You will learn the design methodologies used to construct computer systems and networks. Such methodologies include Fault-tolerant distributed algorithm design, Concurrent programming, Computer systems engineering and secure and Dependable systems design. The coursework is designed to develop both your theoretical knowledge and practical expertise.
For example, you will learn how to:
- design a system based on new and existing components (Systems engineering)
- understand low-level hardware/software interaction, develop systems and applications (Programming)
- analyse performance and system design limitations (Distributed computing) and
- assess, evaluate, and design systems, programs and applications to increase security and dependability (Systems design).
Rather than concentrating on a single aspect of computer systems and networks, the courses provide the broad, practical and up-to-date experience required by major ICT companies who develop computer systems and networks.
Who should apply
The programme trains professionals in the field of Computer science and engineering. We welcome applications from graduates of Computer science, Computer engineering, Information engineering, Software engineering, Electrical engineering, Mechatronics, Mathematics and Physics. You should identify yourself as someone who understands the connection between the systems and hardware and also be able to programme (write code).
The subjects of computer networks and architecture and distributed systems are fundamental areas in the Computer systems and networks master’s programme. The courses included in the programme plan handle topics such as real-time systems and cyber security.
Master's programme structure
The master's programme runs for a duration of two years, leading to a Master of Science (MSc) degree. During each year, students can earn 60 credits (ECTS) and complete the programme by accumulating a total of 120 credits. Credits are earned by completing courses where each course is usually 7.5 credits. The programme consists of compulsory courses, compulsory elective courses and elective courses.
Compulsory courses year 1
During the first semester the programme starts with two compulsory courses that form a common foundation in Computer systems and networks. Each course is usually 7.5 credits.
- Computer networks
- Operating systems
Compulsory courses year 2
In the second year you must complete a master's thesis in order to graduate. The thesis may be worth 30 credits or 60 credits depending on your choice.
- Technical writing in computer systems and network
- Master’s thesis
Compulsory elective courses
Through compulsory elective courses, you can specialize in various subjects. You need to select two out of the following course tracks in order to graduate.
- Computer security
- Real-time systems
- Distributed systems
- Computer architecture
You will also be able to select courses outside of your programme plan. These are called elective courses. You can choose from a wide range of elective courses, including the following, recommended courses:
- Data-driven support for cyber-physical systems
- Autonomous and cooperative vehicular systems
Advanced mandatory courses for providing the necessary background.
Computer networks (7.5 credits)
How does the internet work? How are new computer networks designed? How do we ensure that our networks function correctly and efficiently? And how do we program applications that communicate with each other? This course teaches the basics of network design and implementation, covering topics from core protocols like TCP/IP to emerging network technologies. The course also emphasizes the fundamental algorithms underlying computer networks.
Operating systems (7.5 credits)
How do applications actually run on a computer system? How do multiple applications run at the same time? Operating Systems are an integral part of all computer systems, from workstations to smartphones to embedded systems in vehicles. This course provides an introduction to OS design and implementation. Students who have taken a similar course during their bachelor studies may choose an elective course instead.
Technical writing in computer systems and networks (7.5 credits)
How can you prepare yourself to write a master thesis? What exciting topics in the field of Computer systems and networks could you work on? How can we learn from the professional literature about these topics? This course covers a broad range of skills that are needed for planning and carry out a thesis project in the area of Computer systems and networks.
Course tracks that serve as the backbone of the Master’s programme. Select at least two course tracks out of four course tracks. (Each track includes two courses of 7.5 credits.)
Computer architecture (7.5+7.5 credits; study periods 1 and 2)
How can we design computers that solve problems as fast as the underlying technology permits and with minimal energy consumption? This course track provides an understanding of the principles that govern the design of computers used in IT systems ranging from smartphones to data centres.
Cyber security (7.5+7.5 credits; study periods 3 and 4)
What is security? Can we really make computer systems and networks secure? Are internet attacks and intrusions avoidable? In this course track, you will scrutinize the reasons behind such security problems and study methods and mechanisms for protecting against them. The track instils an understanding of the fundamental issues through modelling and evaluation.
Distributed systems (7.5+7.5 credits; study periods 2 and 3)
Why do we need distributed systems? How can a collection of independent computers appear to its users as a single coherent system? How can we build a working system out of parts that do not work correctly all the time? These are questions that distributed system designers must answer. This course track teaches the fundamental principles and builds practical knowledge needed to answer such questions.
Real-time systems (7.5+7.5 credits; study periods 3 and 4)
How do computer systems ensure that things happen in time? For example, when a car needs to brake, how does its computer system make it happen NOW? This track teaches the software design process for embedded systems with special requirements for reliability and timeliness. You will study design principles for programming languages and software systems followed by performance analysis and optimization of real-time systems.
Elective courses (37,5 credits)
What if you want to learn more about a particular subfield? Students can freely choose four elective courses from the above list of courses and other elective courses such as Cryptography and Programming language based security. We recommend the elective project courses: Data-driven support for cyber-physical systems (study period 1) and Autonomous and Cooperative vehicular systems (study period 2).
Thesis (30 credits)
Students may perform their thesis work in an industrial context or within a research group at Chalmers. Students who want to write a research-oriented thesis may apply for an additional 15 credit research project or extend their research thesis work to 60 credit units.
Programme plan, syllabus, course description and learning outcomes
Other master's programmes that might interest you
Admissions academic year 2021/22
General entry requirements
An applicant must either have a Bachelor's degree in Science/Engineering/Technology/Architecture or be enrolled in his/her last year of studies leading to such a degree.
Specific entry requirements
Bachelor’s degree with a major in: Computer engineering, Computer science, Automation and mechatronics, Electrical engineering, Engineering physics, Mathematics, Software engineering or related subjects
Prerequisites: Mathematics (including Calculus (at least 7,5 cr.) and Linear algebra (at least 7,5 cr.)), Introduction to Computer engineering (at least 5 cr.), Programming in a General-purpose language (e.g. C/C++/Java/Haskell or similar (at least 7,5 cr.)) and one of the following courses: Discrete mathematics and/or Mathematical statistics and/or Probability theory and/or Algorithms and/or Data structures (at least 7,5 cr.)
Preferable course experience: Finite automata theory and Formal languages, Mathematical modelling and problem solving, Functional programming, Machine-oriented programming, Development for embedded systems
English language requirements
Chalmers Bachelor’s degree
Are you enrolled in a Bachelor’s degree programme at Chalmers now or do you already have a Bachelor’s degree from Chalmers? If so, different application dates and application instructions apply.
Master of Science (MSc)Credits:
: Second Cycle, Master'sRate of study:
Full-time, 100%Instructional time:
DaytimeLanguage of instruction:
On-campus (Location: campus Johanneberg)Tuition fee:
140 000 SEK/academic year
*EU/EEA Citizens are not required to pay fees
Questions about the application:
Chalmers Admissions, firstname.lastname@example.org
Specific questions about the programme:
, Director of master's programme
The master's programme has been carefully designed to be relevant to a growing industrial and governmental ICT sector. In particular, the healthcare, e-commerce, aerospace, automotive, and telecom industries all rely on secure, dependable, safe, and energy-efficient computing systems and communication networks.
The master's programme gives you the opportunity to combine academic training with engineering work experience, a combination that opens up diverse career paths, such as becoming:
- the Chief Technology Officer who takes responsibility for the company’s technological development plan and influences its competitiveness in the market
- the Systems Architect and Designer who builds computer systems and design networked applications and protocols
- the Project Manager responsible for driving specific projects by choosing technical directions and leading people
- the Software Engineer who develops systems and run-time software that interfaces to the hardware platform
- the Security and Network Specialist who oversees company computer resources to ensure that sensitive data and services are only accessible to authorized users.
Research within Computer systems and networks
The faculty behind the programme has an established track record of academic, industrial and scientific accomplishments in the following research areas:
- Cyber security
- Dependable real-time systems
- Distributed computing and systems
- Computer architecture
As a student, you will be invited to take part in such research through seminars, thesis projects, and other individual and group projects. Past research collaborations including master-level students have yielded many innovations and accompanying scientific publications. Moreover, many of these students have been accepted to PhD studies at Chalmers and other leading institutions worldwide.
“We find flaws in the systems and fix them”
Priyanka Ravi Kumar, India, Computer Systems and Networks
Why did you choose this programme?
– I worked with networks and security at Dell in India for a couple of years after my bachelor’s in Computer Science. I had a clear idea of where I wanted to go next and the computer security-track in this programme was the most interesting to me. You have no idea of how easy it is getting into different systems without any credentials. It’s exciting to find systems have flaws that can be exploited and work on fixing them. The job opportunities in this entire field look really promising and I was really career-oriented when I made my selection.
What have you been working on?
–I have been working with a well-known Swedish app where we found some major flaws in the booking system. In that project, we researched a lot and worked on improving the flaw. In projects like this, we usually don’t have any exams, but we do find solutions, make presentations and write reports. We are usually free to choose any security-related project that we want.
What do you like the most about your programme?
– The courses are interesting and intense, so you won’t ever feel like nodding off in class. My favourite part is the lab's assignments that are really “hands-on” and challenging. We usually work in pairs, so you get to collaborate with a lot of new people, gain different perspectives and learn to come up with alternate solutions together. We also have guest lecturers from companies like Facebook and Google who have open demonstrations of how people have exploited their systems and how they worked on solving it.
What do you want to do in the future?
– I have already gotten job offers here in Sweden, but I want to complete my studies here at Chalmers first. I am open for many career paths since you can become any sort of web developer, but in the end, I would like to become a cyber security-analyst. It’s a person who works with securing a system from all angles to make sure that nobody can attack it.