Curriculum vitae

Personal statement

Having successfully defended my PhD at the Chair of Software Engineering (ETH Zurich), I have a strong technical background in system architecture, programming, and several other software engineering areas. I strive to find usable and effective solutions when designing and building software, as well as for supporting activities. I familiarize myself with new material quickly. The knowledge of different programming languages, programming paradigms, and software engineering concepts allows me to pick up any technology with ease. My management and organizational skills are excellent, I enjoy working in a team, and I embrace responsibility.

Work & education

10/2009-04/2015

Doctor of Sciences ETH Zurich (Dr. sc. ETH Zurich), Chair of Software Engineering, ETH Zurich
Thesis: Automated Usable Functional Verification of Object-Oriented Programs

My PhD thesis is in the area of software verification. The main outcome is AutoProof, an automated verifier for Eiffel programs. In addition to doing research I supervised students, co-organized a yearly summer school, and have been a teaching assistant and guest lecturer in several courses.

10/2007-04/2009

Master of Science ETH in Computer Science (MSc ETH CS), Specialization in Software Engineering, ETH Zurich
Degree with distinction, grade average of 5.76 (out of 6)
Thesis: Automatic Verification of Eiffel Programs

Notable courses: Concepts of object-oriented Programming, Compiler Design, Game Programming Lab, Advanced Operating Systems.

10/2006-08/2007

Internship at Eiffel Software, California, USA

During the internship I worked on the EiffelStudio IDE, built a community website for the Eiffel language based on Drupal, and implemented an experimental type system to evaluate catcall-avoidance mechanisms.

10/2003-10/2006

Bachelor of Science ETH in Computer Science (BSc ETH CS), ETH Zurich
Top 3% of computer science students, grade average of 5.46 (out of 6)

Notable courses: Software Architecture, Software Engineering, Databases, Information Systems, Information Retrieval, Computer Networks, Distributed Systems, Systems Programming, Theoretical Computer Science.

Notable software projects

10/2008-04/2015

AutoProof: An Automated Verifier for Eiffel Programs
Eiffel/Python

As part of my Master's and PhD Thesis I developed AutoProof, an automated verifier for Eiffel programs. AutoProof checks if an Eiffel program is functionally correct with respect to the contracts specified for each routine.

03/2008-07/2008

Xbox 360 game: SeaBlast
C#, team of 3

We developed an Xbox 360 game for the Game Programming Lab. The game is a submarine action game featuring fluid dynamics in single- and multiplayer modes. My part was developing the game engine, artificial intelligence and user interface.

03/2008-07/2008

Custom operating system
C, team of 2

In the course Advanced Operating Systems we have developed a custom operating system on top of the L4 microkernel.

10/2007-12/2007

Compiler for subset of Java
Java/x86 assembler, team of 3

In the course Advanced Compiler Design we have developed a compiler for a subset of Java directly targeting x86 assembler.

11/2006-06/2011

Drupal modules and web development
PHP, open-source development

For several years I was developing open-source modules for the Drupal content management system. I used Drupal and WordPress to deploy multiple websites.

Management activities

09/2010-04/2015

Organizer of summer school

I have co-organized the LASER summer school five times. The school takes place in Elba, Italy, and has between 60 and 100 people attending every year. My responsibility was preparing the budget, handling participant applications, organizing merchandise, general communication, and maintaining the website.

09/2012-02/2015

Project supervisor

During my PhD I have supervised various student projects: one Master's thesis, two Bachelor's theses and three lab projects.

09/2009-12/2014

Teaching assistant and guest lecturer

I was a teaching assistant for several lectures at ETH Zurich: Introduction to Programming (three times), Software Architecture (two times), Distributed and Outsourced Software Engineering (three times), Java and C# in Depth (once). I was guest lecturer in Introduction to Programming and Software Verification multiple times.

08/2003-07/2014

Managing basketball club

For more than 10 years I was active in the management of a basketball club. For five years I was the club's president. At its peak, the club counted more than 100 active members in 9 teams.

08/2004-04/2012

Basketball Coach

I have been a basketball coach of various teams coaching both youth and adult players. For this I have taken multiple J+S coaching courses.

Language skills

  • German: native
  • English: fluent
  • French: basic
  • Russian: basic