Work Address
College Address




I am looking to build a team at Harvard SEAS starting Fall 2019.

My goal is to explore new ways of programming that are easier, faster, safer.

For safer, I look at systems and formalisms based on types and verification.

For faster, I look at meta-programming techniques including generative programming and reflection to collapse levels of interpretations as well as moving between different views of the same program in a way that helps optimizations, understanding and modifications.

For easier, my goal is to enable a greater number of people to manipulate computer programs (static) and processes (dynamic) in a robust way. To this end, I look at combining Machine Learning and Programming Languages to enable the creation of neuro-symbolic systems that can move back and forth between learnable (neural) and interpretable (symbolic) representations of a system.

My background and expertise is in Programming Languages (types, generative programming), and I am looking for students and postdocs with reinforcing as well as complementary skills. I like to work with other groups, specially in application domains to get inspired to build better computation.


Department of Computer Science & Technology, University of Cambridge

Cambridge, Uk
  • September 2017


Conference and Journal Papers

Talks and Meetings

Professional Service

Software Technology Group, TU Darmstadt

Darmstadt, Germany

Programming Methods Laboratory, LAMP, EPFL

Lausanne, VD, Switzerland
  • 2011
  • 2017

RiSE, Microsoft Research

Redmond, Wa, Usa
  • June 24, 2013
  • July 5, 2013

Computer Architecture Group, Computer Science & Artificial Intelligence Laboratory

Cambridge, Ma, Usa
  • Fall 2006
  • Fall 2008

Computational Molecular Biology, Max-Planck Institute for Molecular Genetics

Berlin, Germany
  • Summer 2003
  • & January 2004

Supercomputing Technologies Group, Laboratory for Computer Science

Cambridge, Ma, Usa
  • Summer 2002
  • & Fall 2002

Ideker Lab, Whitehead Institute for Biomedical Research

Cambridge, Ma, Usa
  • Fall 2001
  • & Spring 2002


Ecole Polytechnique Fédérale de Lausanne (l'EPFL)

Lausanne, VD, Switzerland
  • 2011
  • 2016
  • Doctoral Program in Computer, Communication and Information Sciences
  • Coursework includes
    • Foundations of Software [Scala]
    • Synthesis, Analysis, Verification [Scala]
  • Teaching assistant for Functional Programming Principles in Scala (2012, 2013, 2014), Principles of Reactive Programming (2013)
  • Teaching assistant for Programming I in Environmental Sciences & Engineering (2013), in Microengineering and in Electrical & Electronics Engineering (2015)
  • ‘‘Teaching Assistant Team Award’’ for Programming I (2015)

Massachusetts Institute of Technology (MIT)

Cambridge, Ma, Usa
  • Fall 2001
  • Fall 2008
  • Master of Engineering in Electrical Engineering & Computer Science, December '08 (GPA: 5.0/5.0)
  • Bachelor of Science in Computer Science & Engineering with Music Minor, May '08 (GPA: 4.5/5.0) — advised by Prof. M. Frans Kaashoek
  • Coursework included
    • Computer System Architecture [Assembly, C++] (G)
    • Large-scale Symbolic Systems [Scheme, Common Lisp] (G+)
    • Advanced Algorithms (G)
    • Multithreaded Parallelism: Languages and Compilers [Haskell] (G~)
    • Computational Biology [Python] (G~)
    • Classical Mechanics: A Computational Approach [Scheme] (G)
    • Audio Processing by People and Machines [Csound] (G)
    • Fundamentals of Probability (G)
    • Laboratory in Software Engineering [Java]
    • Computer Systems Engineering
    • Microcomputer Project Laboratory [Assembly]
    • Signals & Systems [Matlab]
    • Introduction to Algorithms
    • Mathematics for Computer Science
    • Circuits & Electronics
    • Structure & Interpretation of Computer Programs [Scheme]
    • Information & Entropy
    • Introduction to Western Music
    • Harmony & Counterpoint I & II
    • MIT Concert Choir
    • American Music (~)
    • Film Music
    • Modern Fiction
    • Introduction to Linguistics (+)
  • Lab assistant & tutor for 6.001 Structure & Interpretation of Computer Programs (2004, 2005, 2006)
  • Tutor for 6.046 Introduction to Algorithms (2005)
  • 6.170 Letter of Commendation awarded by Prof. Michael Ernst for outstanding performance in the ‘‘Laboratory in Software Engineering’’ class (2005)

Ecole Polytechnique Fédérale de Lausanne (l'EPFL)

Lausanne, VD, Switzerland
  • Spring 2004 & Spring 2007
  • Teaching assistant for Prof. Wulfram Gerstner's master-level machine learning course
  • Independent studies as a free-moving students
  • Coursework included
    • Artificial Intelligence [Common Lisp] (6/6)
    • Natural Language Processing [C++] (5.5/6)
    • Artificial Neural Networks [C, Python] (5.8/6)
    • Bio-Inspired Adaptive Machines [C, Python] (6/6)
    • Bioinformatics (5/6)
    • Modern Abstract Algebra (6/6)
    • Linear Algebra (5.5/6)
    • Economics (6/6)

Ecole Polytechnique (l'X)

Palaiseau, France
  • Fall 2003
  • Foreign exchange student
  • Coursework included
    • Computer Architecture (A)
    • Automata, Computability, and Complexity (A)
    • Programming Languages [OCaml] (A)
    • Computer Graphics [C++] (B)
  • Part of the school's all-girls basketball team

Collège Rousseau

Geneva, GE, Switzerland
  • August 1997
  • June 2001
  • Maturité cantonale et fédérale mention ‘‘bien’’



Zürich, Switzerland
  • 2009
  • 2011
  • Gmail Software Engineer
  • Projects included
    • Compiler infrastructure supporting Gmail and Google Apps
    • Tools to diagnose Gmail's latency
    • Reducing server-side latency of sending emails
    • Reducing client-side latency of initial loading
    • Reducing lockouts of legitimate Gmail users
    • Prototyping a Wave / Gmail integration lab, launched internally
  • Code in Java, JavaScript, Python, Sawzall, Dremel, Awk & shell scripts
  • Awarded a Peer Bonus for enabling usage of Gmail's CSS compiler for Android projects
  • Part of the performance team that reduced stylesheet compilation from 5% of total cluster CPU time of Gmail to negligible
  • Trained on the Gmail release cycle, finding a bug initially classified as a cosmic ray


Zürich, Switzerland
  • Summer 2008
  • Intern Software Engineer
  • Improved type inference and checking in a JavaScript-to-JavaScript compiler performing static analysis, code optimization and code compression
  • Awarded a Peer Bonus for "benefiting numerous projects including all of Google Apps"
  • See the Closure Compiler, opensourced in November 2009


  • Intern Software Development Engineer
  • Extended Visual Studio in C# to enable a RAD (Rapid-Application Development) experience for data-driven WCF (Windows Communication Foundation) clients

Lombard Odier Darier Hentsch (Private Bankers)

Geneva, Switzerland
  • Summer 2004
  • Intern in IT Architecture
  • Developed a solution to authenticate network devices with disconnected smartcard readers in C++ according to the RADIUS standard

ArsDigita Foundation

Cambridge, Ma, Usa
  • Summer 2000
  • Built & maintained database-backed websites using Oracle's RDBMS with Philip Greenspun
  • Instructed software engineers on web services
  • Toured California as part of a non-profit organization to match pet lovers with abandoned pets
  • First runner-up in ArsDigita Prize 1999 for Metis Service

Press Clips