Logo. Thanks to Larry Ewing, Simon Budig and Garrett LeSage for making the penguin. Source: https://commons.wikimedia.org/wiki/File:Tux.svg

Jappie Klooster

Ik hou ervan om dingen te bouwen, dingen om trots op te zijn, dingen die impact hebben. Ik heb letterlijk de wereld afgereized opzoek naar de beste technologie, bijvoorbeeld door een jaar in australie door te bregnen en een in China te doen. Daarnaast ben ik breed opgeleid door vanaf mijn bachelor informatica over te gaan naar een onderzoek master in AI. Doordat ik een brede kennis heb van verschillende technologie stacks, en doordat ik altijd up-to date ben met de nieuwste ontwikkelingen kan ik een hoop waarde creëren voor de bedrijven die mij inhuren. Het is immers een stuk goedkoper een bestaand idee te porten dan een nieuwe to ontwikelen. Daarnaast zorgt mijn levens lange programeer passie ervoor dat ik razendsnel bestaande projecten kan opikken en bijdrage kan leveren.

NaamJappie Klooster
GeslachtM
NationaliteitNL
NiveauMSc
FunctieFreelance programmeur
WoonplaatsFlexibel (Ansen, drenthe)
RijbewijsB

Werkervaring

02/2019 - heden, Fullstack programmeur en devops

Periode

02/2019 – heden

Functie

Fullstack programmeur en devops

Branche/organisatie

W van der meer en zonen

Projectomschrijving

De NVWA wil graag voor elke lading kippen een formulier hebben met de status van de levering. Dit project maakte dit formulier online beschikbaar en schreef het weg in de database. Daarnaast waren er nog verschillende UX dingen die moesten worden opgelost in het ERP systeem wat al draaide.

Taakomschrijving

Realizatie van project, dit werd gedaan in PHP, Haskell en Mysql.
Testen, dit werd gedaan met Hspec en handmatig.
Requirements engineering. Vaak werd er veel gevraagd, maar met wat analyze en verder onderhandelen kon ik taken die weken zouden duren terug krijgen naar enkele uren.

Tools, Technieken en methoden

git, emacs, Haskell, servant, mysql/mariadb, JSON, JavaScript, Citrix, nix/nixos, docker, HTML, persistent, linux, agile, PHP, Windows server, KVM, Agile

03/2012 - heden, oprichter Raster

Periode

03/2012 – heden

Functie

Oprichter

Branche/organisatie

Raster.click

Projectomschrijving

Raster.click is een rooster systeem speciaal ontwikeld voor restaurants. er zit gestaagde groei in gebruik en functies.Dit is van een hobby project uitgegroeid naar iets waar echte waarde in zit.
Dit project was initieel in PHP gescreven, toen later herschreven in python, en uiteindelijk herschreven in Haskell.

Taakomschrijving

+ Ontwikkeling van de applicatie met behulp van Haskell, reflex en servant
+ Deployment met behulp van nixos en nixops
+ Verkoop/klant interactie
+ Gebruikers ervaring, het systeem werkt prachtig voor een selecte markt.
+ Requirements, door het omzetten van klant wensen naar concrete doelen.

Tools, Technieken en methoden

git, emacs, Haskell, servant, reflex, beam, postgresql, nixops/nix/nixos, JavaScript, Django, Jinjia, JSON, makrdown, HTML, linux, agile, CSS, PHP, mysql

2/2018 – 10/2018, Backend programmeur - Sydney

Periode

2/2018 – 10/2018

Functie

Backend programmeur

Branche/organisatie

Daisee

Projectomschrijving

Daisee is een australische start-up die kunstmatige intelligentie maakt voor bedrijven. Jappie was één van de hoofdingenieurs die hielp met het opperationeel maken van het vlaggeschip product LISA. Daisee had oorsprongelijk nog geen product, alleen financiering. Jappie hielp dit mogelijk te maken.

Taakomschrijving

Hij heeft een webserver opgezet, die vervolgens binnekomende audio transcripties maakte via een derde partij service, en tot slot het resultaat van deze transcripties via python IPC analyseerde. Het hele systeem werkte via een distributed job queue, die was geïmplementeerd in SQL.

Vanuit het niks was een enterprise product ge-creërd in Haskell. Er was gebruik gemaakt van Reproduceerbare installaties maken met behulp van nix en nixops. Hielp met het creëren van de programmeur cultuur.

Tools, Technieken en methoden

git, emacs, JSON, linux, nixos/nix/nixops, confluence, jira, haskell, servant, SQL, postgresql, agile

9/2017 – 2/2018, Full stack programmeur - Sydney

Periode

9/2017 – 2/2018

Functie

Full stack programmeur

Branche/organisatie

Openlearning

Projectomschrijving

Openlearning is een educatie technologie bedrijf dat online cursussen aanbiedt. Het onderscheidt zich door cursussen die bestaan uit quizzes, video's en interactive `widgets'.

Taakomschrijving

Als een full stack ontwikkelaar werkte ik met alle onderdelen van de grote broncode. Deze bestond hoofdzakelijk uit Python en JavaScript. Daarnaast werkte ik met devops technieken zoals ansible en puppet, en ook heel veel docker voor ontwikkeling met een beetje kubernetes.

  • Gewerkt met een grote gevarieerde broncode met degelijk wat technische schuld.
  • Gebruik van geavanceerde cloud technologieën. zoals docker en kubernetes

Tools, Technieken en methoden

git, emacs, JSON, fedora, debian, jira, python, JavaScript,JSON, SQL, postgresql, mongodb, React/Redux, React native, Kubernetes, docker, scrum agile, CSS, Ansible

5/2017 – 8/2017, Game developer

Periode

3/2017 – 9/2017

Functie

Game developer

Branche/organisatie

Supporter vererning ruinen

Projectomschrijving

Het digitaliseren van een gokspel, waarin een koe een vak markeert om aan te geven welk loodje wint

Taakomschrijving

Realizatie van project (ik was de enige programmeur).
Testen.
Requirements engineering

Tools, Technieken en methoden

git, emacs, Elm,  HTML, CSS, gentoo

1/2017 – 7/2017, Thesis: Java Chatbot

Periode

1/2017 – 7/2017

Functie

Onderzoeker

Branche/organisatie

Universiteit Utrecht

Projectomschrijving

Het doel was het maken van een chatbot die MBTI achtige persoonlijkheid had. Hieruit kreeg Jappie een aanbieding voor een PhD positie die is afgewezen omdat ze zijn plannen voor australie in de weg stonden.

Taakomschrijving

Jappie deed onderzoek naar MBTI en Carl jungs persoonlijkheid typen. Daarnaast implementeerde die het prototype om te bewijzen dat de ideeen werken. Er werd gebruik gemaakt van het drools expert systeem.

Tools, Technieken en methoden

Java, Wildfly, Drools, Maven, Latex, git, org-mode.

9/2014 – 9/2015, Android programmeur (stage) - China

Periode

9/2014 – 9/2015

Functie

Android programmeur (stage)

Branche/organisatie

Tewoo

Projectomschrijving

Het ging over het maken van 2 Android apps. De eerste was een

carpool match-up app en de tweede was een taxi vind app van een bestaand

taxi bedrijf.

Taakomschrijving

Ontwerpen en implementeren van een android app die comminuceerde met een backend in een interculterele omgeving.

Tools, Technieken en methoden

git, emacs, JSON, gentoo, Java, XML, JUnit, Groovy, Android, Gradle

9/2013 – 3/2014, Stage webtech

Periode

9/2013 – 9/2014

Functie

Webdeveloper (stage)

Branche/organisatie

Iceberg

Projectomschrijving

Het doel was een online markt plaats voor producenten en consumenten van voedsel. We wouden een app die geschikt was voor web zowel als mobile.

Taakomschrijving

Implementeren van de backend, devops voor online neerzetten de backend app. Helpen met integratie tussen app en backend en tot slot het aansturen van mijn teamgenoten.

Tools, Technieken en methoden

debian, bash, Java, XML, JUnit, Groovy, Gradle

2008-2015 Web developer (verschillende contracten)

Periode

2008 – 2015

Functie

Web developer (independent contracts)

Branche/organisatie

Huiskamer, Solexmarkt

Projectomschrijving

In deze periode heeft jappie verschillende websites ontwikkeld en onderhouden.
Waaronder: Een web winkel solexmarkt.nl, de website de2dekamer.nl en dehuiskamer.com en een online kookboek

Taakomschrijving

Requirements afstellen. Omgaan met oude lang lopende code. Creative oplossingen verzinnen onder tijdruk.

Tools, Technieken en methoden

git, emacs, JSON, fedora,  debian, jira, python, JavaScript, JSON, SQL, postgresql, mongodb, React/Redux, React native, Kubernetes, docker, scrum agile, Java, CSS, Groovy, Grails, Spring security core, Gradle, Hibernate

Opleidingen

Universiteit Utrecht

2015-2017

MSc AI, met agents als hoofstroom: Intelligent agents, Multi agents systems, Multi agent learning, Philosophy of AI, en optioneele vakken in: Evolutionary computing, Geometric algorithms, Games & Agents en Data mining.

Windesheim, Zwolle

2010 - 2015

HBO Informatica, Minoren: Game development, Web development, and the internships. Dit omvatte verschillende groeps opdrachten waar werk condities werden nagebootst. Sommige zijn beschikbaar

Projecten / Opensource

Projecten waarin ik bijdrage heb geleverd.
ProjectSamenvattingRol
raster.clickA startupOprichter
Gaia chatbotthesis projectAutheur
Hyper NerdTwitch chatbotBijdrage
AI game spaceExploration of an AI gameworldAutheur
BrightnesctlScripts to do laptop backlight managementAutheur
Awesome project nameIntelectual pursuit of reflex FRP and other Haskell librariesAutheur
BulmexA reflex FRP libraryAutheur
Email poolUsing data.pool for email connectionsAutheur
5olA game in rustAutheur
Network uriLow level library for haskell URI'sBijdrage
OffertexTypeset offer documents nicelyAutheur
Reflex dom helpersHtml tags for reflex, I took over as maintainerBijdrage/Maintainer
dbfieldA small library in Haskell for the beam database frameworkAutheur
Heavy log shortcuts A library that makes using the Heavy log library easierAutheur
Cut the crapAutomated video editingAutheur

Talenkennis

Taal Schriftelijk Mondeling
Nederlands Moedertaal Moedertaal
Engels Uitstekent Uitstekent
Duits middelmatig middelmatig
Fries beginner beginner
Chinees beginner beginner

Referenties

Klant Persoon/Functie Email/Telefoon
W van der meer en zonen Remon van der meer / IT manager +31 641309180
Daisee Chrisitan Marie christian@daisee.com

Kennis en vaardigheden

Een kennis matrix anno 18.09.2019. Meer plusjes is meer kennis. Een enkel plusje betekent basis vaardigheid tot vijf plusjes betekent erkend expert (door anderen).

Programmeer talen

Ervaringsniveau

Haskell

++++

Java

+++

Python

++++

Rust

+++

Javascript

+++

CSS

+++

Bash

++

SQL

+++

Elm

+++

PHP

+++

C/C++

++

Assembly

+

Devops

Ervaringsniveau

Nix & nixops & nixos

+++

Networking (netcat, ip, netstat, nmap, etc)

+++

Ubuntu, debian, fedora (redhat), gentoo

+++

Linux

++++

Docker

++++

Kubernetes

++

Citrix, Virtualbox, Qemu

++

Google cloud, Amazon web services

+++

Webpack

+

Ansible

++

OpenVPN, wiregaurd

++

Nginx, Apache

+++

Cross compilation (scala-js, ghcjs, x64 → x86)

++

Gdb

+

Email: STMP, IMAP, POP3, dovecot, postifix

+++

DNS record inspecting

+++

Logging (stackdriver, journalctl etc)

++++

 

AI

Ervaringsniveau

Baysian probabilities

++

Constraint satisfaction solving (rule based)

+++

Chatbots

++++

Neural networks

++

Random forrest

++

Vakkennis

Ervaringsniveau

UX Design

+++

Testen (testanalyse en testuitvoering)

++++

Requirements engineering

+++

 

Methoden en Technieken

Ervaringsniveau

Agile / Scrum

++++

UML / Use cases

+++

Object orrientatie

+++

Functioneel programmeren

++++

Type level programming

++

Aspect oriented programming

++

Pen testing

++

Graphics

+++

REST

++++

 

Databases

Ervaringsniveau

MySQL, Mariadb

++++

SQL Server

+++

Postgres

++++

MongoDB

+++

Redis

++

Casandra

+

sqlite

++

 

Software bibilotheken

Ervaringsniveau

Akka

+++

Swing

++

Spring

++

Hibernate

++

Django, flask

++++

jinjia

++

React, redux

+++

React native

+++

Reflex

++++

Beam, persistent

+++

Pipes

++

Lens

+++

Beautifulsoup

++++

Junit, HSPec, unittest

+++

NLTK

++

JME3, LibGDX

+++

Drools

+++

Win32, SDL

++

Android

+++

 

Tools

Ervaringsniveau

Emacs

+++++

Vim

++++

Inkscape

++

Adobe Photoshop, Gimp, Krita

++

Excel/Calc

+++

Git

++++

Syncthing

++

Ngrok

++

Curl

+++

GNU coreutils

+++

wine

+++

Jira

++++

Confluence

++++

Github, gitlab

++++

I3wm

++++

Data formats

Ervaringsniveau

GraphQL

+

XML

+++

JSON

++++

YAML

++++

TOML

+++

 

Markup

Ervaringsniveau

Latex

+++

Markdown

+++

HTML

++++