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 ProgramsMy 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 ProgramsNotable 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/PythonAs 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 3We 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 2In 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 3In 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 developmentFor 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