Teaching

[Bachelor] 2021-2023: Computer Structures and Operating Systems

This course addresses how hardware and software systems are built, using abstraction, and how they work together. Students are guided to build a complete, general-purpose, and working computer system from ground up, starting with elementary logic gates.

[Master] 2022: Project Seminar on Search Engine for Satellite Data

This project seminar explores the application of deep learning techniques to develop an advanced search engine for satellite imagery. Participants will learn how to leverage deep neural networks like CNNs, UNets, ResNets to classify and analyze satellite images, enabling efficient and accurate retrieval of specific features and patterns from vast satellite image datasets.

[Bachelor] 2022: Specialization Module on Deep Learning with Python

The Deep Learning with Python specialization module offers an in-depth exploration of neural networks, optimization algorithms, using popular Python libraries like TensorFlow and PyTorch. Through hands-on projects, participants gain practical experience in building and evaluating deep learning models for data science applications.

[Master] 2022: Machine Learning for Modern Data Management

Database systems have been widely used in many real-world applications, due to their reliability and optimized operations. In this seminar, we research Machine Learning techniques that boost Data Management in highly demanding applications. We deep dive into the most recent developments from both research and industry.

[Master] 2021-2022: Data Integration

Data Integration is critical for diverse information system development tasks. In this course, a collection of tools and techniques is presented that can be applied in modern data integration tasks. Students are presented with the problems, solutions, and techniques related to data integration, and have the opportunity to apply the acquired knowledge techniques in practical scenarios.

[Master] 2021: Data Management for Machine Learning Systems

Machine Learning systems are extremely impacted by data quality and volume, where data access is generally a bottleneck (i.e., moving data around is costly). Since common ML systems architectures are inspired by DB systems, in this seminar we explore how data management techniques have provided effective solutions to make ML reliable and more efficient.