CV

Download my CV (last updated: February 2014).

Personal Facts

Tom Van Cutsem
Born: 1982, Leuven, Belgium. Nationality: Belgian
PhD in Sciences (Dutch: Doctor in de Wetenschappen), Vrije Universiteit Brussel (VUB), 2008, Greatest Distinction;
Master of Science in Computer Science (Dutch: Licentiaat Informatica), Vrije Universiteit Brussel (VUB), 2004, Greatest Distinction
Language proficiency: Dutch (Mother Tongue), English (Fluent)
E-mail: tvcutsem at vub dot ac dot be

Experience

  • Feb 2014 - Present: Senior researcher at Alcatel-Lucent Bell Labs.
  • Oct 2012 - Sept. 2014: Professor at the Vrije Universiteit Brussel (University of Brussels, VUB).
  • Feb 2010 - Oct 2012: Part-time Professor (10% ZAP-BOF) at the University of Brussels (VUB).
  • Nov 2009 - Apr 2010: Visiting Faculty at Google, Inc. in Google's HQ in Mountain View, CA, USA. Work on various proposals for the next edition of the ECMAScript (aka Javascript) standard.
  • 2008 - 2014:FWO Post-doctoral researcher at the Software Languages Lab, University of Brussels. Area of expertise: programming language theory (especially concurrent, parallel and distributed languages and systems).
  • 2004 - 2008:FWO Research assistant at the Vrije Universiteit Brussel, Brussels. Obtaining a PhD in computer science. Teaching assistant for Master-level courses such as Computer Graphics and Declarative Programming.

For a list of my academic publications and talks have a look at my publications page.

Higher Education

  • 2004-2008: Obtained the degree of PhD in Sciences (Grade: Summa Cum Laude) at the Programming Technology Laboratory of the Vrije Universiteit Brussel, Brussels. Promotors: Prof. Dr. Wolfgang De Meuter and Prof. Dr. Theo D'Hondt. My research was funded by means of a grant from the Fund for Scientific Research, Flanders (FWO) which is Belgium's flemish science foundation. It is the most prestigious research funding organisation of the country, funding only first-rate researchers to perform fundamental research in any scientific discipline.
  • 2000-2004: Vrije Universiteit Brussel, Brussels. Obtained the degree of Master of Science in Computer Science (Licentiaat in de Informatica):
    • 1st year / 1ste kandidatuur (july 2001): Magna Cum Laude / Grote Onderscheiding
    • 2nd year / 2de kandidatuur (july 2002): Summa Cum Laude / Grootste Onderscheiding
    • 3rd year / 1ste licentie (july 2003): Summa Cum Laude / Grootste Onderscheiding
    • 4th year / 2de licentie (july 2004): Summa Cum Laude / Grootste Onderscheiding
    • Honors: Received the 'Science Award' of the VUB Faculty of Sciences in July 2004. Awarded yearly by the faculty of sciences to the student with the best merits seen across the entire career of study.

Achievements

  • Together with Mark S. Miller (Google), developed a concrete proposal for extending the ECMAScript (Javascript) language with proxies.
  • Together with Stijn Mostinckx at the University of Brussels, designed and implemented the distributed, open-source AmbientTalk programming language.
  • Author of reflect.js, a Javascript reflection library making the ECMAScript 6 reflection API available on current platforms.
  • Together with Dries Harnie, Joeri De Koster and Theo D'Hondt, designed SchemeKen, a distributed, resilient dialect of Scheme.
  • Author of traits.js, a minimal trait composition library for Javascript.
  • Independently developed a 26-hour lecture series at university Master-level on multicore programming and an introductory university Bachelor-level course on distributed systems.
  • Author of stm-in-clojure, a meta-circular implementation of software-transactional memory in Clojure. I use this library for teaching STM in my university course on multicore programming.
  • As a CS student, worked on several programming projects including a compiler for a C-like language for the JVM written in C++, a mobile agent travel reservation system in Java, a FFT-based gene sequence detector in Pico and a primitive 3D rendering engine based on Binary Space Partitions, a text-based RPG, and a spreadsheet in PLT Scheme.

Technical Skills and Competences

Writing project proposals, reviewing papers, writing technical documents, research, guiding people, good software design and engineering skills.

I have experience in working in a software development team on small to medium-scale projects. In the context of my PhD research, I developed my own programming language in a team of 6 people. I managed most of the project: designing the system, coding the system, performing task management, version control, unit testing, bug tracking, website maintenance, etc. Task management included setting milestones, deadlines, dividing the work load between team members and the organization of meetings.

I am familiar with the traditional 'waterfall' model, but also have experience with agile programming, extreme programming and iterative development backed by rigorous unit testing.

Knowledge of: Java technology stack, Eclipse, C/C++, Scripting (JavaScript, Python, Ruby), MySQL, version-control systems (Git/CVS/SVN). Experience in a wide array of (academic and industrial) programming languages (Erlang, Clojure, Prolog, Smalltalk, ...). Expert in object-oriented technology, software development (analysis, design, design patterns and implementation) and programming languages. Thorough knowledge of compiler- and interpreter development, distributed, parallel and concurrent platforms and frameworks, transaction processing. Knowledge of web development (JavaScript, Ruby on rails, node.js) and content-management systems (drupal, wordpress).

References

  • Dr. Mark Miller, research scientist at Google, my host and colleague while working at Google
  • Dr. Terence P. Kelly, senior researcher at HP Labs, collaborator.
  • Prof. Dr. Wolfgang De Meuter, Professor at Vrije Universiteit Brussel, my promotor
  • Prof. Dr. Theo D'Hondt, Professor at Vrije Universiteit Brussel, my promotor
  • Dr. Jessie Dedecker, former colleague