Functional programming enthusiast, DDD practitioner, proficient team player.
Researcher of elegant solutions to complex problems.
A correct and maintainable program derives from clear specifications, exposes sound semantics and allows local reasoning on its code.
Strongly typed functional programming is the most effective technique I found that allow me to write correct and maintainable software.
This is why domain driven design, applied mathematics and modern programming languages like Haskell or Scala are essential tools for me.
I like to continually improve the tools I use: I am an active contributor to Scalaz, the FP library for Scala and NixOS, the purely functional Linux distribution.
For when I must use Java, I have created and open-sourced Derive4J: a tool to ease functional Programming in Java, and I also maintain, with others, the FunctionalJava library.