Career Profile

In the beginning of 2020 I finished my Masters Degree from the Technische Universität Dresden and I am now in the pursuit of a PhD at the University of Kent in Canterbury.

During my Undergraduate I worked as a student research assistant at the Chair for Compiler Construction, developing a parallelizing compiler called Ohua. And I was also active as a member of the student representation, i.e. the union.

Education

PhD in Computer Science (in progress)

2020 - Present
University of Kent, Canterbury

I am trying to bring advanced analyses enabled by modern, strong type systems to older languages with less expressive type systems, such as C and Java.

For a more detailed description see my Kent Staff Page

M. Sc. in Computer Science

2016 - 2020
Technische Universität Dresden

My advanced studies in CS mostly focused on distributed systems and parallel programming.

At the same time I have researched and written assignments on functional programming, software transactional memory, free monads and extensible effects.

My masters thesis focuses on deep integration of User Defined Functions in databases. You can find my slides for the introductory talk of the topic here.

B. Sc. in Computer Science

2013 - 2016
Technische Universität Dresden

Undergraduate studies in Germany have a mostly fixed curriculum spanning the basics of computing machine implementation, logic, mathematics, graph theory, algorithmic thinking and complexity theory etc.

For the advanced courses I chose Compiler Construction and Database Programming.

A link to the thesis itself is in the publications section. There is also a git repo

Experiences

Student Research Assistant

2015 - 2020
Chair for Compiler Construction - TU Dresden

I helped develop a parallelizing compiler called Ohua under the supervision of Sebastian Ertel. I worked on the semantics of the language, the compiler frontend, its lambda calculus based intermediate language and the transformation passes.

Student Tutor

2014 - 2015
Faculty for Computer Science - TU Dresden

I tutored computer science for mechanical engineering students, mostly using C# and a introductory robotics programming lab class for freshmen CS students.

I also offered a voluntary class for intermediate level Python and one for Haskell in two subsequent terms.

Work and Travel

2012 - 2013
Mostly KFC and Taco Bell Canada

I spent a little over 10 months in Kelowna, Canada on a Work and Travel program to take a peek and the country and culture.

During this time I did pretty much any job our small fast food restaurant required.

Projects

This lists the more insteresting of my public projects. I also develop and maintain a few minor ones, such as the Haskell syntax extension vor Visual Studio Code. You can find the full list on my GitHub profile.

Ohua - A parallelizing compiler with exchangeable runtimes and flexible frontends.
Ÿauhau - Automatic optimization for I/O actions via batching, caching and concurrency.
mustache - Mustache templates in Haskell
marvin - A Haskell framework for creating chatbots. Inspired by Hubot.

Publications

These publications were created during my work at the Chair for Compiler Construction.

You can also have a look at my Google Scholar profile

Sebastian Ertel, Justus Adam, Norman A. Rink, Andrés Goens, Jeronimo Castrillon
Proceedings of the 12th ACM SIGPLAN International Symposium on Haskell
Sebastian Ertel, Andrés Goens, Justus Adam, Jeronimo Castrillon
Proceedings of the 27th International Conference on Compiler Construction
Sebastian Ertel, Justus Adam, Jeronimo Castrillon
PMAM@ PPoPP
Andrés Goens, Sebastian Ertel, Justus Adam, Jeronimo Castrillon
MULTIPROG

Skills & Proficiency

Haskell

Concurrent & Parallel Programming (MPI, Actors, STM, Threads & Locks, Promises)

Python

Java, Clojure

Rust

Ocaml

LaTeX