The main mission of the Computer Science in English study program is the training of specialists who have solid knowledge of computer science and the ability to apply it in solving different problems from various fields. The program aims to provide knowledge and skills that allow graduates an easy integration into the IT industry but also the possibility to continue professional training through a master’s program and subsequent integration into research activity in the field of theoretical and applied Computer Science.

The students will gain theoretical and practical knowledge on
  • analysis, design, implementation and maintenance of software applications
  • analysis, modeling, interpretation and evaluation of complex systems
  • problem analysis and construction of abstract models / formal models / computational models
  • usage of theoretical concepts in computer science
  • the structure and operation of an information system
  • data storage, organization and processing
and several skills on:
  • implementation of applications in various programming languages (Python, C, C++, Java, JavaScript, C#)
  • software testing and verification
  • planning the activity of designing and implementing software products
  • configuration and integration of computer systems / software systems
  • design and development of software architectures for organizing and processing data
  • administration of computer networks
  • elaboration of documentation
  • offering consultancy in the IT field
  • implementation of data security strategies and data management policies

* Note: for syllabus click on the lecture name

Year I Semester I

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Algorithms and Data Structures I
6
2
2
Programming I
6
2
2
Logic for Computer Science
6
2
2
Algebra and Analytical Geometry
5
2
2
Computer Architecture
5
2
2
Foreign language
2
1
1

Year I Semester II

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Algorithms and Data Structures II
6
2
2
Formal Languages and Automata Theory
5
2
2
Calculus
5
2
2
Programming II
6
2
2
Practice Stage I
2
2
Foreign language
2
1
1
Web Design
4
2
1
Methods and practices in informatics

Year II Semester I

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Graph Theory and Combinatorics
5
2
1
Operating Systems I
5
2
2
Databases I
5
2
2
Programming III
5
2
2
Individual Project
2
1
Foreign language
2
1
1
Elective course – transversal competences
2
1
1
Advanced Data Structures
4
2
1
Formal Methods in Software Development

Year II Semester II

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Computer Networks
5
2
2
Probability and Statistics
4
2
1
Software Engineering
5
2
2
Logic and Functional Programming
4
2
2
Team Project
2
1
Foreign language
2
1
1
Practice Stage II (4 weeks x 6h/days)
2
1
Elective course – transversal competences
2
1
1
Operating Systems II
4
1
2
Programming for mobile devices
Computational Geometry
Databases Administration

Year III Semester I

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Artificial Intelligence
5
2
2
Web Technologies
5
2
2
Methodology for Writing the BS
3
2
Differential Equations
5
2
2
Advanced Programming
5
2
1
Distributed and Concurrent Programming
Software Systems Testing
Elective course – transversal competences
2
1
1
Design Patterns
5
2
1
Information Theory

Year III Semester II

Topics
ECTS
Lectures / week
Seminaries or Laboratories / week
Numerical Methods
5
2
2
BSc Thesis Preparation
5
2
2
Graphics and User Interfaces
5
2
2
Security and Cryptography
5
2
2
Cloud Computing and IoT
Network Administration
5
2
2
Intelligent Systems
Management Information Systems
5
2
2
Applications Development using .NET platform