Skip to content
Avatar

Sponsoring

@dominikh @caarlos0 @bep @wagoodman @smorimoto @zaquestion @haya14busa @networkop @meyskens

Achievements

GitHub Sponsor

Achievements

GitHub Sponsor

Highlights

  • 4 discussions answered

Organizations

@jetstack @touist @cert-manager
Block or Report

Block or report maelvls

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
maelvls/README.md

Hi! My name is Maël (prononciation). I am a software engineer living in Toulouse (France). I like to promote psychological safety through empathy and kindness. What I enjoy the most is to tinker with containers, networking and Linux-y security. I love being part and contributing to open-source communities. I also enjoy building cool CLI tools.

You may read about me digging into networking, Go development, and Kubernetes on my blog.

Some of my contributions: cert-managergitlab (Ruby), boost-graph (C++), auto-multiple-choice (C++, Perl), kubernetes-sigs/kind and kubernetes-sigs/cluster-api (Go), ocaml-minisatocaml-qbf, ocamlyices2opam (OCaml). I authored homebrew-amctouist (OCaml) and a couple of vscode-extensions.

🔰 Curriculum & contact information

System Software Engineer at Jetstack (2021–present)

I joined the cert-manager team at Jetstack, where I work at building the open-source community around cert-manager as well as contribute to the enterprise offering.

System Software Engineer at Ori Industries (2019–2020)

As a Software Engineer at Ori Industries, my main focus was to develop an edge-aware version of Cloud Foundry. Telcos would use this infrastructure platform to leverage its low-latency last-mile 5G network. With this platform, they can sell compute time to developers with a network latency of 1-2 ms, acting as a public cloud provider of their own.

As an individual contributor, I helped shape the Kubernetes components that would make up the Ori infrastructure platform. Among others, my team built a Kubernetes native API for spinning up VMs on AWS, GCP, and OpenStack and bootstrap them into Kubernetes clusters. I also worked on a custom control plane for Envoy (our platform’s data plane) inspired by Istio. I contributed to the company’s initial REST API built-in Go that used a CQRS approach and NATS for the event persistence. My main achievement as an individual contributor has been to become the go-to person anyone would come to regarding Kubernetes controllers as well as for debugging Kubernetes and network-related issues.

After a few months, I stepped up as tech lead in a team of four people. I would run the daily standups, make sure the backlog is in good shape, work with the Product Manager to flesh out stories, point the stories with the team, run a biweekly retro meeting (we ended up working in an uninterrupted sprint). Notable achievements are the “project office hours” I started; the meeting increased the cross-team communication through demos and open discussions about anything more or less related to my team’s project.

Beyond my primary assignment, I also worked with the rest of the company on topics such as

  • Helped grow the remote-first culture thought experiments such as the “wormhole” and by pushing for better video call quality (more than 70% of the company now equipped with proper standalone mics such as the Blue Yeti). A blog post about my experience of remote work is published here.
  • I initiated a movement towards transparency across the company that led to a rewrite of the “values” page. We started recording meetings and creating, for each meeting, a shared document with an agenda and collaboratively-written minutes.
  • Contributed to the company knowledge base on various topics such as “the git guide,” “slack etiquette,” and “recording and sharing meetings.”
  • Attended all weekly meetings of sig-cluster-lifecycle to keep the company up to date with upstream developments as well as advocate for our solution; contributions: kubernetes-sigs/kind, kubernetes-sigs/cluster-api
  • I helped develop a self-learning program where each engineer spends 20% of their time training on various topics. I authored a couple of blog posts and proposed learning topics engineers would pick during their training (mainly around Kubernetes controllers, networking, and Linux-y things).
  • I authored the technical test given to applicants and was part of the technical interviews.
  • I wrote multiple internal kubectl plugins for interacting with our custom resources and a tool for monitoring and removing unused VMs on OpenStack, AWS, and GCP.
  • I authored ngroker, a tool we used at Ori for running a shared ssh session without the hassle of exchanging ssh keys (using Github usernames).
  • I wrote an interactive ChatOps bot using Github Actions for applying Terraform changes through PRs.

Tools used: Go, Kubernetes, Github Actions, Helm, Terraform, AWS, GCP, OpenStack, Agile.

Fullstack Software Engineer contracted to La Banque Postale (2019)

As part of a network operations team, I built a web application meant to become a self-updating repository of IP assignments (as opposed to using Excel sheets), which helps the operations team plan and execute fail-overs.

Tools used: Java, Spring Boot, Typescript, Angular 2+, NgRx.

Systems Software Engineer contracted to Orange (2018)

As part of an operations team, I built a Terraform plugin in Go for a private cloud used within Orange (mainly interacting with VMWare vRA 7 APIs). I also worked on the continuous testing and delivery of Docker images used by application teams across the company.

Tools used: Go, Terraform, Gitlab CI, Bash, VMWare vRA 7.

Education

Ph.D. in Computer Science (2016–2018)

I developed touist, a compiler written in OCaml for a new logic language meant to formalize and solve problems expressed as SAT expressions. The tool is now used to teach logic to first-year students at Université Paul Sabatier in Toulouse and is used by researchers to explore new SAT encodings; see the thesis (in French).

As part of my PhD, I also helped develop a web application serving as a frontend to the compiler written in VueJS and Rust; we deployed it through Docker images built by Travis CI and run using AWS ECS.

Tools used: OCaml, Rust, Typescript, AWS ECS, Travis CI.

Contact details

Pinned

  1. Automatically provision and manage TLS certificates in Kubernetes

    Go 7.9k 1.4k

  2. 🐳 A gRPC microservice for dealing with users and its CLI client + Helm chart

    Go 7 1

  3. 🐧 ChatOps + Terraform using Github Actions

    HCL 1

  4. ⛵️ Infra-as-code for my playground Kubernetes cluster stuff hosted on *.k.maelvls.dev

    Shell 1 1

  5. ngroker Public

    🧸 Ngroker is a tiny helper for creating an ngrok session for pairing with my colleagues just by using their Github usernames

    Shell 2

  6. TouIST, the IDE & Language for Logic (backed by SAT, SMT and QBF solvers)

    OCaml 58 11

Contribution activity

October 2021

Created a pull request in jetstack/cert-manager that received 2 comments

The Vault issuer can now be given a serviceAccountRef

As detailed in #4144, the Vault issuer is only able to use a Secret in order to use the "Kubernetes authentication" method. The downside to this se…

+238 −35 2 comments
Opened 2 other pull requests in 1 repository
jetstack/jetstack-secure-gcm 2 merged

Created an issue in ksnip/kImageAnnotator that received 4 comments

Annotating an existing PNG screenshot results in a file twice as big when saved to disk

Hi. I am using ksnip v1.9.1 and have noticed that anytime I open a PNG file, add some annotation and save it back to disk, the PNG file increases. F…

4 comments
Opened 1 other issue in 1 repository
Answered 1 discussion in 1 repository
jetstack/cert-manager
9 contributions in private repositories Oct 1 – Oct 11

Seeing something unexpected? Take a look at the GitHub profile guide.