Note: if you want the most up-to-date information about me, I
recommend taking a look at my LinkedIn page.
- I speak and write English fluently. Come try my delicious and refreshing
french-flavoured accent! 😄
- I enjoy contributing to open-source projects; when I do, it is mostly a
way of scratching a developer itch on one of my tools. I sent pull
requests to ocaml-minisat, ocaml-qbf, ocamlyices2 and opam
(OCaml), gitlab-ce (Ruby on rails, Rspec), boost-graph (C++).
- I authored and am the maintainer of various
projects: homebrew-amc (Ruby, Travis CI), touist (OCaml) and
four vscode-extensions (they use Typescript; one of them has 29k
- From my experience, open-source promotes tolerance when it comes to
discussing and accepting other’s patches as well as leading people to
give friendly and constructive critics (most of the time though; mileage
may vary, see this email Linus wrote to one of his
- I love functional programming; I have 3 years of experience using OCaml
building a compiler and solver for propositional logic. I also did some
ReasonML. I discovered Elixir and Erlang a couple of days ago and so far, I
love it. Still a lot to learn though, but I start to get the hang of it.
- I am very interested by micro-service architectures. I did some
side-projects using Go, gRPC (e.g. maelvls/users-grpc) with
Kubernetes. I had a lot of fun with it (thanks to Go’s excellent ‘dev
experience’). I also played with Elixir which also benefits from a very
polished ‘dev experience’. I also played a lot with Rust and compared it
to Go (rust-chat, touist-server). Rust is is by far the fastest
‘modern’ language, but not the easiest to learn: borrow checker,
- Throughout my work, I like to improve the ‘developer experience’ (DX) by
improving the tooling as well as the overall DevOps workflow. I think that a
good developer experience keeps retaining and gaining good developers. If
given the opportunity, I wish to contribute in that regard.
- I worked with multiple automation and continuous integration tools (Drone.io,
Travis CI, Gitlab CI, Circle CI and Appveyor; pull request lifecycle using
bots and Slack ChatOps integration with Slack). On the CI/CD side, I also
collaborated with the Homebrew ‘tap’ people: How to automate the build of
bottles on your Homebrew tap.
- I experimented with Docker, Kubernetes using Terraform, Helm, Traefik and
Prometheus/Grafana; both on AWS EKS and GCP GKE
(see maelvls/awx-gke-terraform and maelvls/terraform-touist).
- I have some knowledge on machine learning (more specifically, deep
learning) as it was one of the topics during the first 6 months of my PhD
(see my masters-thesis).
- I can bring some knowledge about routing problems, more specifically shortest
path algorithms. During an internship at Mobigis, I developed a shortest-path
algorithm based on Dijkstra for carpooling on actual geographic data; I also
contributed to the open-source boost-graph library (mainly written in
C++11). I also worked on vehicle routing (vehicule-routing-report in
- On the teamwork side, I worked in various project agile setups (Scrum and
Kanban) in teams ranging from 2 to 6 people. I enjoy sharing ideas around
team workflows and ways of shipping smoother and faster.
- As a last note, I really think pair-programming and code reviews can make us
developers grow and learn from others, not only about code but also finding
the best tooling and shortcuts (Emacs, IDEs, command line tools…) and such.
I am currently employed by SQUAD and am currently contracted to La Banque
Postale (Toulouse, France). I work on tools for network administrators,
including a web front-end to Ansible Tower APIs.
Before that, I was contracted to Orange, where I worked on tools for
developers, examples and documentation in order to improve the developer
experience when it comes to using the Orange IT’s private cloud. I also try
to promote and find new ways to guide people into sharing their own code as
well getting the most out of Orange’s internal GitLab.
On April, 10th 2019, I defended my PhD thesis at IRIT (Institut de
Recherche en Informatique de Toulouse, France – location) in the LILaC
and ADRIA team. My PhD work was supervised by Olivier Gasquet (IRIT),
Dominique Longin (CNRS), Frédéric Maris (IRIT) and Andreas Herzig (CNRS).
My goal was to develop a tool and a language, TouIST (pronounced
twist, standing for Toulouse Integrated Satisfiability Tool), that
will allow us to express and solve real-world problems through the use of
multiple logic theories: SAT, SMT and QBF for now.
Toulouse integrated satisfiability tool.
it is prononced twist. we were looking for a memorable and
pronounceable name that had no homonym on google. and it
had to sound like fun, too!
- Developer tooling
- Functional programming
- CI/CD and Kubernetes
PhD in Artificial Intelligence, 2019
Université Toulouse 3 – Paul Sabatier
MSc in Operations Research, 2016
Université Toulouse 3 – Paul Sabatier
BSc in Computer Science, 2014
Université Toulouse 1 – Capitole