Research Projects

My research interests are at the intersection of Systems and Language runtimes (e.g., the Java Virtual Machine, JavaScript engines, WebAssembly runtimes etc), Data analytics (e.g., SQL query compilation and optimization, data serialization and de-serialization, etc), Parallel, Distributed and Concurrent programming (e.g., GPU programming, SIMD parallelization, shared-memory concurrency, etc), and broadly speaking Cloud computing (e.g., serverless). In general, I like to build things, and I am interested in all performance-related aspects of the topics above.

All offered projects are challenging and require good systems programming and knowledge. I assume that at the Bachelor’s level you have taken (or you are familiar with some of the topics of) Computer Organization, Advanced Network Programming, Compiler Construction, Operating Systems, and Concurrency and Multithreading. At the Master’s level, you have taken/or you are familiar with at least some of Programming Large-Scale Parallel Systems, Systems Seminar, Programming Multi-core and Many-core Systems. Very good knowledge of Java, C, C++, Rust, or comparable languages is strongly recommended.

MSc-level projects.

The projects below can either be a MSc thesis (typically with a literature study) or large (12 ECTS) MSc research projects. Some of the projects can be adapted to BSc-level (for ambitious BSc students!)

BSc-level projects.

Depending on the topic, most of them can be extended to more challenging MSc-level projects.

Literature studies.

Literature studies are often paired with a MSc thesis. In exceptional cases (e.g., a MSc thesis with industry) I am happy to supervise literature studies on all areas related to the BSc and MSc topics above.

Past projects.

These project have been completed and are no longer offered. If you find the topic very interesting, I am happy to discuss about possible follow-up projects on the same topics.

_