I have been involved in the following courses and summer schools.

Principles of Decentralized Ledgers

Imperial, Spring 2018, '19, '20, '21

Role: Organisator and Lecturer

This is the first blockchain course at Imperial College London. This course provides an introduction to Blockchain, it's security, privacy and scalability guarantees and limitations. The focus is on fundamental concepts and models to better understand blockchain. Basic required cryptography is repeated, and protocols are analyzed. The students also learn how to program smart contracts and are introduced to our online learning platform Blockchainworkbench. The recorded course content is available online.

Information Security

ETH Zurich, Spring 2016

Role: Teaching Assistant

This course provides an introduction to Information Security. The focus is on fundamental concepts and models, basic cryptography, protocols and system security, and privacy and data protection. While the emphasis is on foundations, case studies will be given that examine different realizations of these ideas in practice.

Foundations of Computer Science

ETH Zurich, Fall 2015, 2016

Role: Teaching Assistant

This course provides basic information regarding programming, data manipulation and visualisation. Students work learn to use Python, manipulate makros, relational databases and multidimensional tables.

Security of Wireless Networks

ETH Zurich, Fall 2013, 2014

Role: Teaching Assistant

After this course, the students should be able to: describe and classify security goals and attacks in wireless networks; describe security architectures of the following wireless systems and networks: 802.11, GSM/UMTS, RFID, ad hoc/sensor networks; reason about security protocols for wireless network; implement mechanisms to secure 802.11 networks.

Design of Digital Circuits

ETH Zurich, Spring 2013

Role: Teaching Assistant

This course provides an introduction to the design of digital circuits and computer architecture. It covers the technical foundations of logic gates, an introduction to hardware description languages (and their use in the design process), as well as processor and computer architectures.

Introduction to Eiffel Programming

ETH Zurich, Fall 2016

Role: Teaching Assistant

This course helps students to improve their Eiffel programming knowledge. It covers the basic language concepts, classes, types, objects, variables and their respective syntax. It also covers basic control structures, and more advanced topics such as data structures and recursion.

Role: Guest Lecturer

In recent month many decision makers in various industries started to consider how they can make blockchain technology part of their future strategy. The Challenge however is to find those developers, architects and engineers who not just have a fundamental understanding about blockchain but also able to build a solution. BIOTS Switzerland brings education around blockchain and IoT to students in form of a yearly event. It aims to train and inspire students to build their own proof-of-concept and become future experts in this new fields.