Jonas De Vuyst

Basic Info

Open as PDF
Homepage
GitHub
Emailjdv@foobar.be
PassportBelgium
LanguagesDutch, English
Job DescriptionsFunctional Programmer, iOS Developer

Technology

programming Haskell, Rust, Swift, Objective-C, Clojure
DSL regular expressions, SQL, HTML, CSS,
dev-ops Docker, Jenkins, CircleCI, OpenShift

Work Experience

2023–now
Standard Chartered. Dubai. Haskell.
In April 2023 I joined Standard Chartered Dubai as a Senior Quantitative Developer.
2022
Digital Asset. Zurich. Daml, TypeScript.
In the second half of 2022 I worked for Digital Asset as a Client Experience Engineer. This role involved assisting clients with developing smart contract applications for the Canton distributed ledger (developed by Digital Asset). Specifically, we helped clients with deployment, scaling, and with general questions about the Daml smart contract programming language (which is based on Haskell).
2021
Network Guard. Singapore. Swift and Objective-C.
In the second half of 2021 I worked at Network Guard for five months as a senior software engineer with a focus on Apple platforms.
2018–21
Standard Chartered. Singapore. Haskell.
In February 2018 I joined Standard Chartered Singapore. My initial work entailed helping a Digital Transformation project get ready for a pilot release. In my role as a full stack engineer I worked with Jenkins, Docker, OpenShift, AngularJS, Java, and Scala.

In September 2018 I joined a different team as a Quantitative Developer. My work in this team mostly consists of rapid application development in (a dialect of) the Haskell programming language. I worked on several GUI and backend applications.

2016–18
Grab. Singapore. Swift and Objective-C.
In July 2016 I joined Grab, South East Asia’s leading ride-hailing platform that went on to beat Uber early 2018. My responsibilities included:
  • Implement new features for the iOS passenger app. For example, I worked on the initial implementation of GrabRewards.
  • Continued efforts on ensuring the stability of the main booking flow.
  • Work with other teams to realize new features.
  • Diagnose and fix bugs.
  • Interview and report on potential hires for the mobile engineering team.
2015–16
MyDoc. Singapore. Objective-C, Swift, Clojure.
  • Addressed severe stability and reliability issues in the existing two MyDoc apps (one app for patients and one app for medical professionals).
  • Found and helped solve major bugs in the MyDoc REST API and messaging server.
  • Refactored the two MyDoc apps into a leaner, unified codebase.
  • Took the initiative to properly support iPad.
  • Took many initiatives to improve the user experience of the apps and overall platform.
  • Introduced Swift in the MyDoc apps.
  • Used Clojure to write a crucial server-side component:
    • Started as a Backend for Frontend (BFF) component to alleviate limitations of the existing messaging server (from a mobile perspective).
    • Based on the notion that messaging is a special case of synchronization.
    • Was deployed to run on equal footing with the existing XMPP server via a RabbitMQ bridge.
    • We eventually got rid of our XMPP stack entirely.
  • Wrote documentation on the MyDoc platform and helped shape the hiring process.
  • Played a crucial role in realizing the MyDoc 3.0 apps with an innovative conversational user interface.
  • Developed chat bots in Clojure using finite state machines.

Other Programming Experience

2017
Library for automatically proving equalities in commutative monoids. As a simple example, this can be used to generate a proof that, for all natural numbers l and c and r, l + (c + r) = (c + l) + (0 + r).
2017
Implementation of several data structures in the dependently-typed functional programming language Idris. A distinguishing feature of my implementation is that key features of the data structures are formally verified.
2015
Acted as reviewer of a book on the Swift programming languages for PACKT Publishing.
2015
Ruminant. Swift.
Implementation of persistent vectors from the Clojure programming language in Swift.
2014
Hype Alarm. Objective-C.
Alarm clock for iPhone. Plays popular songs from the Hype Machine at dawn.
2014
Comprehend. Clojure.
Clojure in-memory database modeled on sets, not tables. Comprehend supports pattern matching, forward matching, rewriting, and transactional storage.
2014
OS X app that uses the webcam to detect if the user is in front of the screen, and prevents the display from sleeping if that’s the case.
2013–14
Termcat. Clojure.
Markup language for scientific writing. Termcat code compiles to HTML and MathML. From a technical point of view, Termcat is also a programming language.
2013
Theorem prover for public announcement logic. This application is based on my doctoral research.
2013
KeyBar. Objective-C.
iPhone/iPad app for easy typing of mathematical and technical symbols.
2003–11
Website for creating public diaries, created in collaboration with friends.
2001–07
Computer science projects. Scheme and C++.
As part of my university education I wrote several programs. The larger projects included a cellular automata simulator (Scheme), a stack-based virtual computer (Scheme), and an order picking system (C++).
2001
High school graduation project. Java/Swing.
For the final project in high school I created a multi-threaded Java application with a graphical user interface. The application was a front-end for an SQL database and also featured an XML backend.
199X
Hobby projects. Visual Basic and Java.
My personal projects in high school included a Connect Four game (VB), a code editor (VB), and a Java library that wrapped the IRC protocol.

Diplomas

jan. 2014
Doctor of Philosophy. Vrije Universiteit Brussel.
Graduated with greatest distinction.
2008
Master’s degree in philosophy and ethics. Vrije Universiteit Brussel.
Graduated with greatest distinction.
2007
Bachelor’s degree in philosophy and ethics. Vrije Universiteit Brussel.
Graduated with great distinction.
2001
High school degree in computer studies. KTA Lindenlei, Ghent, Belgium.

Other Schooling

Fall 2013
The Recurse Center. New York.
The Recurse Center (formerly known as ‘Hacker School’) is a ‘writer’s retreat’ for programmers.
2009–13
Various summer and winter schools.
Three editions of the European School for Language, Logic, and Information in Bordeaux (2009), Copenhagen (2010), and Ljubljana (2011).
One edition of the Indian School for Logic and its Applications in Hyderabad (2010).
One edition of the East-Asian School on Logic, Language and Computation in Chongqing (2012).
The 4th World Congress and School on Universal Logic in Rio de Janeiro (2013).
One edition of the Artificial General Intelligence (AGI) Summer School in Beijing (2013).
2012
Semester at the Department of Philosophy, Tsinghua University. Beijing.
From February through August 2012 I stayed at Tsinghua University as a guest PhD student under supervision of Fenrong Liu.
2010
Semester at the ILLC. Amsterdam.
From February to June 2010 I was at the Universiteit van Amsterdam as a guest PhD student under supervision of Benedikt Löwe.
2001-07
Partially completed computer science program. Brussels.
I completed courses in computer science at the Vrije Universiteit Brussel equivalent to three semesters.

Awards

2011
Prize awarded for my master’s thesis.

Bibliography

Talks at Conferences and Meetups

Nov. 2018 Making of Rekenaar, An Idris Solver for Commutative Monoids. Singapore Haskell Meetup, Singapore.
Explanation of the why and how I created the Rekenaar library.
Oct. 2017 A Functional Data Structures Primer. Singapore Clojure Meetup, Singapore.
An introduction to the implementation of functional data structures.
June 2013 Dynamic Tableaux for Public Announcement Logic. LICS 2013, New Orleans.
Previously, I gave preliminary versions of this talk at a 2012 Reasoning Club in Brussels and at the 2013 UNILOG conference in Rio de Janeiro.
Oct. 2011 Minimal Revision and Classical Kripke Models: First Results. LORI-III, Guangzhou, China.
I also presented this research at TbiLLC2011 in Kutaisi, Georgia and in the student session of PLS8 in Ioannina, Greece.
Jan. 2010 Epistemic Logic with Contexts. ISLA 2010 (student session), Hyderabad, India.
Nov. 2006 Autonomie en zingeving bij posthumanen. 28e Vlaams–Nederlandse Filosofiedag, Brussels.

Teaching Experience

Apr. 2012
Intensive modal logic course.
Taught 3 × 3 hour sessions on model theory at Tsinghua University, Beijing.
2008–11
Introductory course to logic.
About 6 × 2 hour sessions every year, plus tutoring.

Events Organized

Jan. 2014
Feb. 2011
PhDs in Logic III. Brussels.
Organized in collaboration with Lorenz Demey.

Grants

2011
Travel grant for an extended stay abroad. Flemish Fund for Scientific Research.
Grant for supporting a six month stay in Beijing.
2010–11
Grants for organizing a conference and for publishing proceedings.
Lorenz Demey and I got grants from the Royal Academy of Belgium, the National Center for Logic Research, and the VUB Doctoral School of Human Science for organizing PhDs in Logic III.
2009–13
2 × 2 year grant for preparing a doctoral dissertation under supervision of Jean Paul Van Bendegem and Patrick Allo.
2008–09
Doctoral grant. Vrije Universiteit Brussel research council.
One year doctoral grant. Supervised by Jean Paul Van Bendegem.