Media Library


CS Graduate Studies

Date: September 18th, 2017




On behalf of the Computer Science Department, we encourage you to explore our following graduate programmes:


Master's Programme in Computer Science and Information Systems with Focus on Big Data



The Master's Program in Computer Science and Information Systems with focus on Big Data is designed to train candidates in the field of data science. With massive amounts of data generated today, the role of a data scientist is to translate terabytes of data into meaningful and actionable wisdom that will help optimize business operations and solve large-scale scientific problems. Data science is the most sought after specialization in the IT industry today, and the program aims to address the growing shortage of IT specialists in this field. 

The program is aimed at two types of candidates: IT professionals who are looking to expand their knowledge in Big Data, as well as candidates interested in doing research in the field of Big Data.The program is designed in collaboration with the University of North Carolina in Charlotte (UNCC), and all Master's credits are further transferable to the UNCC PhD program. 

The classes are held after hours to accommodate candidates with full-time employment.



The program is comprised of 8 courses plus Master's dissertation and the Research and Methodology seminar. The program is organized as one-year (full-time) or two-year(part-time). Six courses are big-data specialty courses, and two courses are breadth courses. For candidates enrolling the one-year program, the schedule is as follows: 









CS500 Machine Learning                                                                                       (8 ECTS)

CS535 Natural Language Processing                                                                 (8 ECTS)

CS505 Computer Architecture (Breadth course)                                           (8 ECTS)

CS530 Compiler Design (Breadth course)                                                            (8 ECTS)

CS600 Big Data Research and Methodology Seminar                                       (12 ECTS)

CS550 MSc Dissertation                                                                                         








CS520 Data Structures and Algorithms for Big Data                              (8 ECTS)

CS525 Data Visualization                                                                               (8 ECTS)

CS545 Applications of Big Data                                                                     (8 ECTS)

CS548 Cloud Computing                                                                                   (8 ECTS)

CS600 Big Data Research and Methodology Seminar                          (12 ECTS)

CS550 MSc Dissertation                                                                            (32 ECTS)



For candidates who opt for the part-time program, they take two taught courses plus the Research Seminar and MSc Dissertation each semester. 




Machine Learning
Instructor: Prof. Mirsad Hadžikadić, PhD -  Download CV

Summary: This course is an introduction to machine learning and data mining methods, with a focus on investigating and comparing different machine learning and data mining techniques in the context of their applications in various domains. Topics: supervised learning (classification and regression tasks, decision trees, learning models specifications/evaluations, regression, Naïve Bayes classifier, Bayesian networks, neural networks, SVNs), data reduction (feature selection, feature extraction --- PCA, LDA), unsupervised learning (clustering, self-organizing maps, association rules), advanced topics (reinforcement learning, Markov decision processes, game theory, genetic algorithms).


Natural Language Processing 
Instructor: Hossein Hassani, cPhD -  Download CV

Summary: The course gives an introduction to Natural Language Processing using Python. The lectures cover basic techniques from a practical perspective and include tutorials on the use of the NLTK toolkit. The course includes an individual/small group project where students create a practical application using NLTK. Topics: Introduction to Python & NLTK, Segmentation and tagging, Regular expressions, Corpora and Lexical resources, Text classification, Information Extraction, Sentence structure / Parsing, Semantics / Predicate logic, Machine Translation, Discourse, and co-reference.


Data Structures and Algorithms for Big Data 
Instructor: Dr. Džejla Međedović, PhD -  Download CV

Summary: The idea of the course is to introduce students to algorithmic paradigms that come into play when the size of the input is too large to be efficiently handled by classical algorithms. Three main themes of the course are 1) Approximate membership data structures & streaming data, 2) Hashing, and 3) External-memory algorithms and data structures. The main goal of the course is to introduce students to state-of-the-art research relating to theoretical aspects of big data, as well as introduce them to data structures most frequently used in industry to solve such problems. The course is intended to equip students with the ability to conduct independent research, to read research papers and distill their message, and to integrate the theoretical with the practical aspects of data structures and algorithms.


Data Visualization
Instructor: Dr. Belma Ramić-Brkić, PhD -  Download CV

Summary: With the increase of the use of data across all fields, we are witnessing the importance of data visualization techniques. The major goals of this course are to understand how visual representations can help in the analysis and understanding of complex data (the relationship between them), how to design effective visualizations, and how to create your own interactive visualizations using modern frameworks. 


Applications of Big Data (Bioinformatics)
Instructor: TBD

Summary: This course introduces students to a specific application of big data outside the field of computer science. In most cases, the topic taught will be bioinformatics or big data in finance. Below is the summary for the bioinformatics course:

The goal of this course is to teach computer science and medical students the foundations of solving large-scale problems in biology using computer algorithms. The course is structured as a sequence of biology questions that guides students through algorithmic paradigms used to answer them. The course is cross-listed as a computer science and a medical school course, and the course is organized as to have the two types of students interact and work together on a joint project.


Cloud Computing
Instructor: Dr. Almir Mutapčić, PhD -  Download CV

Summary: The main goal of the course is to introduce students to the state-of-the-art technologies used for storing, processing, and computation of Big Data, as well as introduce theoretical underpinnings of such systems. The course is intended to provide students with practical skills related to setting up, operation, and usage of cloud computing systems and ability to conduct independent engineering development and data science. Topics include Block storage, map-reduce, Hadoop, YARN, Hive, HBase, Data science and cloud operations.


Big Data Research and Methodology Seminar

Summary: Big Data Research seminar hosts talks of big data researchers and industry practitioners, and is designed to serve as a meeting place for students, faculty and big data practitioners where new developments in big data are shared.

As a part of this course, students are expected to produce research reports from the talks they attended, incorporating in this assignment the research and writing skills they developed throughout the semester.


MSc Dissertation

Summary: The aim of MSc Dissertation is to provide students with an in-depth look into a particular research/software design problem, and develop effective solutions for it. It is intended to serve as a bridge between academic knowledge and practical real-life problems. Students can choose either a research route, or an industry route when focusing on a Master’s thesis project. 


Computer Architecture 
Instructor: TBD

Summary: This is a standard first graduate-level computer architecture course. The main goal of the course is to presents a challenge in terms of processor speed, memory as well as interconnection networks related to big data environment. The course is intended to equip students with the ability to conduct independent research in computer architecture, and to integrate the theoretical with the practical skills.


Compiler Design
Instructor: Prof.Samir Ribić, PhD -  Download CV

Summary: The course is intended to teach the students the basic techniques that underlie the practice of Compiler Construction. The course will introduce the theory and tools that can be standardly employed in order to perform syntax-directed translation of a high-level programming language into an executable code. These techniques can also be employed in wider areas of application, whenever we need a syntax-directed analysis of symbolic expressions and languages and their translation into a lower-level description. They have multiple applications for man-machine interaction, including verification and program analysis. In addition to the exposition of techniques for compilation, the course will also discuss various aspects of the run-time environment into which the high-level code is translated.



The course fees are € 5.200,00 per year. There is a number of scholarships available for exceptional candidates. For additional information, please contact our Finance Department.



All candidates must be graduates of an undergraduate program in Computer Science, or similar, with a GPA of 3.0 or above. Students with a lower GPA will be considered for admission if they can demonstrate sufficient motivation for the course of study and the exceptional idea for their Master's thesis.



Please fill out and submit the Application Form for Graduate Studies to . Please make sure to fill in all the required sections of the Application Form and include all additional materials requested. This set of documents can be sent to the SSST Registry Office via email at  or by post (the copies of your diploma and grade transcripts do not have to be stamped) to:

SSST Registry / Graduate Programmes

University Sarajevo School of Science and Technology

Hrasnička Cesta 3a

71000 Sarajevo

Bosnia and Herzegovina 


Application Deadline for 2017/2018: 22 September 2017 

Interviews with potential candidates are held by appointment. SSST Registry Office will send a timely notification to candidates for the purposes of scheduling their interview at SSST. For all additional questions, please contact the SSST Registry Office.

For further details on the program, please contact:

+ 387 33 975 001/002



Our Research seminar hosts a number of acclaimed academics and industry practitioners and is open for attendance for everyone. Here is the list of talks we've hosted so far.

To be informed of the upcoming talks, subscribe by sending an email to this email address.  



Programme of Doctoral Studies in Computer Science


All doctoral candidates complete their doctoral dissertation in one of the existing research fields at SSST. Each candidate is assigned a mentor/supervisor, who conducts regular monitoring of the candidate's work.

The period of study is eight semesters (3+1 years). In the first two years of study, alongside conducting research toward the dissertation, candidates also write seminar papers in four key areas (two papers per area) relevant to the content of their dissertation, which is set jointly by a committee and the mentor. An obligatory key course for each candidate is Research Methods, where students attend lectures on how writing research papers and have the chance to write two seminar papers themselves. At the end of the second year, the candidate defends eight papers in front of the committee and also gives a preliminary presentation of his/her dissertation PROPOSAL, a conceptual outline and progress to date (which constitute the Qualifying Examination). If the candidate successfully takes the Qualifying Examination, he/she is free to continue his/her research and presents his/her progress before the supervisor and doctoral committee at the end of each semester.

The following two years, candidates submit and defend their doctoral dissertations. Before the defense, the candidate will, as a rule, have published two papers or the results of their research in a notable and relevant academic journal, or have presented them at a prominent international conference.

PhD Degree
- Successful students, who will defend a doctoral thesis by University of Buckingham criteria, procedures and regulations, will be awarded a Buckingham Doctoral degree (DPhil), validated by the SSST. Both collaborating institutions endeavor to maintain an internationally recognized reputation for excellence by providing high standard supervisory support and continuously monitoring the quality of PhD research project and progress of each candidate. The possible topics of dissertations are chosen from areas in which SSST conducts active research. Dissertations are conducted within projects with financial support, or those chosen by the candidate with sources of funding outside SSST.





The tuition fee for the 4 - year programme is EURO 15,200.00. For additional information, please contact our Finance Department