Vincent Caron's website



11/2021 - 03/2024: Fullstack software engineer

Infomaniak (Geneva, Switzerland) - Permanent position

I was recruited to become part of the "invoicing and domain names" team, which is in charge of anything related to payments and anything related to registering and managing domain names.

As part of my work, I completely rewrote the PayPal code which used the old NVP/SOAP API to switch over to the current REST API.

I also rewrote a large part of the payment processing system, moving from an old debt-ridden PHP codebase to modern PHP using a microservice architecture. That project was also an opportunity for me to apply Test-Driven Development, which resulted in significantly more reliable code. I also made use of my multi-threading skills to speed up some product renewal operations by a factor of 10 for some larger accounts.

Among my duties was helping our tech support staff with bugs. A client, or support itself, would find a bug and create a ticket so we could take a look at it. I resolved hundreds of issues.

I also had the opportunity to mentor new team members. I taught them all about the specificities of domain names and our invoicing systems and got them up to speed on our development workflow.

Stack: PHP, Laravel, JavaScript, AngularJS, TypeScript, Angular, git, GitLab, CI/CD, Docker, SQL, PostgreSQL, TDD, Agile, Scrum, REST, HTML, CSS, Markdown, JSON, XML, PhpStorm, WebStorm

07/2020 - 11/2021: Software engineer

CIBEST (Besançon, France) - Permanent position

I worked both on CIBEST's own products and for other companies as a consultant.

For CIBEST, I programmed a Linux-based executable embedded in a videosurveillance system. The point of the executable was to monitor the surveillance system's various metrics (RAM usage, temperature, disk usage, etc.) and send alerts via RabbitMQ. The executable, written in C, used a multi-threaded model which allowed keeping tabs on each metric separately.

For Kontron, I implemented new features in a vehicle management system used by public transport drivers. Namely, I added to the JavaFX-based user interface a button to turn the ticket scanner on or off. The scanner was previously always on which would disturb the driver's sight, now with my code drivers have a less fatiguing experience.

For Flowbird, I contributed to the Android-based user interfaces of AXIO Touch validators and mobile inspection devices which provide features for public transport riders and inspectors and interact with lower-level magnetic card reading software.

Stack: Java, Android, Spring, Spring Boot, JavaFX, Maven, Linux, C, RabbitMQ, SVN, git, Visual Studio, Android Studio

02/2020 - 07/2020: Fullstack software engineer

SUP-FC (Besançon, France) - Internship

Part of the Service Universitaire de Pédagogie pour les Formations et la Certification (SUP-FC) which provides remote learning and certifications.

I developed a Moodle plugin which would allow representing leaning paths as a mind map.

I also developed a Drupal module which would display university majors and their courses in an accordion format.

Stack: PHP, Drupal, HTML, CSS, JavaScript, Moodle, D3, Visual Studio Code

06/2019 - 08/2019: Fullstack software engineer

DDT (Besançon, France) - Temporary position

Part of the geomatics division of the Direction Départementale des Territoires du Doubs (DDT).

I wrote bugfixes and new features for a geospatial data management web app backed by PostGIS.

Stack: PHP, HTML, CSS, JavaScript, SQL, PotsgreSQL, PostGIS, Visual Studio Code

03/2018 - 07/2018: Fullstack software engineer

CRI (Besançon, France) - Internship

Part of the Centre des Ressources Informatiques (CRI) of the Université de Franche-Comté.

I wrote the front and back-end of a server rack management web app, which would show a representation of the rack down to the IP address of each server port.

Stack: PHP, Slim, Apache, SQL, MySQL, HTML, CSS, JavaScript, Ext JS, Visual Studio Code